Не компилится кастомный сервис смс



  • Всем привет. Ребят подскажите как решить проблему. Так как в дефолтовой версии мягко говоря очень ограниченные смс сервисы, я скачал с этого форума кастомную версию, заменил в корне, у меня все работает. После того как я компилю проект и клиент его запускает, у него становится дефолтный пакет смс сервисов. Как быть?
    В скомпиленный проект я не могу добавить кастомный смс сервис т.к. папка appsremote появляется только после запуска скрипта. Заранее всем спасибо за помощь))))



  • @artsamdev said in Не компилится кастомный сервис смс:

    Всем привет. Ребят подскажите как решить проблему. Так как в дефолтовой версии мягко говоря очень ограниченные смс сервисы, я скачал с этого форума кастомную версию, заменил в корне, у меня все работает. После того как я компилю проект и клиент его запускает, у него становится дефолтный пакет смс сервисов. Как быть?
    В скомпиленный проект я не могу добавить кастомный смс сервис т.к. папка appsremote появляется только после запуска скрипта. Заранее всем спасибо за помощь))))

    Для примера я взял смс модуль от @uraabk.

    Все файлы в модуле нужны для правильной работы модуля в режиме "записи"
    0_1560703079952_8652a02f-571b-43f2-8858-cb2f89435d2c-изображение.png

    Отображение действий, новых сайтов и так далее. Только в одном файле engine.js находятся функции необходимые для работы модуля в режиме "запуск".

    У меня две копии BAS в двух разных директориях
    0_1560703374969_152d6eaf-f4d9-45cd-ba31-da5d265e7a0b-изображение.png

    В одной копии я заменил модуль смс и создал в новом скрипте только одно действие:
    0_1560703853553_288bb84f-e923-452c-94e2-fd1787297fad-изображение.png

    оно возвращает ошибку Error during sms-activate getNumber BAD_KEY (ошибка ключа сайта)

    хоть в тексте ошибки указан сайт sms-activate, запрос идёт на указанный в действии сервис smska.net
    0_1560704007047_dbb5c88c-f0ce-4189-a0e3-c45976ffa246-изображение.png


    Но если открыть этот скрипт в BAS с дефолтным модулем смс, то действие вернёт совершенно другую ошибку: TypeError: Result of expression 'country' [undefined] is not an object. во время выполнения действия 955705616
    и ни каких запросов не будет.

    Что бы действие отработало корректно, необходимо просто открыть файл engine.js в кастомном модуле, выделить весь текст, скопировать его и вставить в скрипт в действие "выполнить код" первым действием:
    0_1560704447631_support89.gif


    Для тех кто не понял, этот способ будет действовать и в скомпилированных скриптах:
    0_1560704712941_support90.gif



  • Большое спасибо за такой подробный ответ.



  • @fox
    Я понял почему не корректно получалось так как ты показал, в default версии Sms модуля и ту которая мне нужна, для какого сервиса брать номер, название сервисов указаны по разному к примеру (GMail в дефолт версии а в той которая нужна мне Goolgle). И в скопилированной версии уже в экшн "получить номер" - "сервис" пустое значение. Вообщем к чему эти заморочки, на sms-activate номер 1 из 10 (в лучшем случае) подходит для регистрации Gmail, а на vak-sms 1 из 4. Как я понимаю единственный верный путь переписать в кастом sms модуле название нужных мне сервисов чтобы они совпадали с дефолт sms модулем. Поправьте если не прав



  • @artsamdev Зачем? И да нет))) Если вы будете обновлять софт и бас будет другой.. то вы получитетож самое. Бас проверить что там у него почему модули дефолтные такие? А потому что они чистые. Модуль ведь можно всякий сделать. Библиотеки под себя какие писать и вставлять. Каждый заморачиватся как хочет. Темные темы, смс ки, А в дефолте не будет, только проверенные модули. Только руками и как написал @Fox/
    Если вы хотите использовать что то свое то добавляете в выполнить код свое и вперед. Прям под текущую задачу написал функцию или выдрал из либы какой.
    Текст ссылки
    Вот пример просьбы добавления либы в дефолт, модуль json так же было добавлен разработчикам, а создан пользователем.



  • Для тех, кто будет использовать мой совет. Сейчас ситуация изменилась, функции нужно помещать в переменные, просто скопировать код из engine.js в "выполнить код" не даст нужного результата:

    0_1564088338145_f952ae61-ab8b-4d7d-94ef-166b7e9da2b9-изображение.png

    0_1564088467564_b130f688-edd5-424a-bdb9-e8251535d195-изображение.png

    0_1564088482643_07b8af88-2d00-4239-a628-f1195ea8c170-изображение.png

    Надо заменить

    function _BAS_GETSMSSITECODE(service,site)
    

    на

    _BAS_GETSMSSITECODE = function (service,site)
    

    для всех функций.

    Тестовый скрипт для наглядности
    0_1564088855792_383c52e0-9047-494e-a70f-782ceb1aa50b-изображение.png


    Написал на скорую руку конвертер для тех, кто ни чего не понял :D



  • 👍👍 золотой вы человек FOX


Log in to reply