Подключите свое приложение к нескольким каналам обмена сообщениями в рамках единой интеграции с открытым стандартом W3C.
Broid Integrations — это проект с открытым исходным кодом, выпущенный Broid, который позволяет вам легко общаться на всех основных коммуникационных платформах (обмен сообщениями и голос) без интеграции каждого API.
Он предоставляет набор библиотек для преобразования всех событий платформ обмена сообщениями в схемы Activity Streams 2.
ТЛ;ДР
С миллиардами ежедневных пользователей обмен сообщениями в настоящее время является предпочтительным каналом связи, но существует явная нехватка открытых стандартов для различных API.
Каждый из них имеет определенную схему, документацию и т. д. Мы хотим дать сообществу возможность создавать отличные вещи с помощью обмена сообщениями, поэтому мы открыли исходный код нашего Premium API, чтобы вы могли избежать утомительной работы по интеграции новых каналов и сосредоточиться на своем основном продукте. .
Быстрый пример, демонстрирующий прослушивание новых сообщений в Facebook Messenger и Discord с Observables.
npm i --save @broid/messenger @broid/discord rxjs ramda
const Rx = require ( "rxjs/Rx" ) ;
const BroidDiscord = require ( "@broid/discord" ) ;
const BroidMessenger = require ( "@broid/messenger" ) ;
const clients = {
discord : new BroidDiscord ( { token : 'DISCORD_TOKEN' } ) ,
messenger : new BroidMessenger ( { token : 'FACEBOOK_TOKEN' , tokenSecret : 'FACEBOOK_SECRET' } )
} ;
Rx . Observable . merge ( ... Object . values ( clients ) . map ( client => client . connect ( ) ) )
. subscribe ( {
next : data => console . log ( JSON . stringify ( data , null , 2 ) ) ,
error : err => console . error ( `Something went wrong: ${ err . message } ` ) ,
} ) ;
Rx . Observable . merge ( ... Object . values ( clients ) . map ( client => client . listen ( ) ) )
. subscribe ( {
next : message => console . log ( JSON . stringify ( message , null , 2 ) ) ,
error : err => console . error ( `Something went wrong: ${ err . message } ` ) ,
} ) ;
Вот 2 кратких руководства по началу работы с broid менее чем за 5 минут и 30 строк кода:
Интеграция Broid поддерживает простые, мультимедийные и насыщенные сообщения (местоположение, карусель) и разделяется на несколько библиотек. Это делает Broid гибким и полезным для использования в вашем приложении.
Имя | Статус | |
---|---|---|
Бройд-Алекса | ||
Бройд-коллр | ||
Бройд-раздор | ||
Бройд-флоудок | ||
бродяга | ||
Бройд-Google-помощник | ||
Бройд-группа | ||
Бройд-IRC | ||
броид-кик | ||
вышивка | ||
Броид-мессенджер | ||
Broid-MS-команды | ||
Бройд-Nexmo | ||
Бройд-Скайп | ||
коса | ||
Бройд-телеграмма | ||
Бройд-Твилио | ||
бройд-твиттер | ||
Бройд-вайбер | ||
Бройд-WeChat | ||
Броид-messagebird | ||
Бройд-GitHub | ||
Бройд-веб-мессенджер |
Интеграция Broid поддерживает потоки активности 2.0 и использует пакет broid-schemas для проверки входных и выходных сообщений.
Имя | Статус |
---|---|
Бройд-схемы |
См. CONTRIBUTE.md.
Чтобы защитить интересы участников Broid, Broid, клиентов и конечных пользователей, мы требуем, чтобы участники подписали Лицензионное соглашение участников (CLA), прежде чем мы перенесем изменения в основной репозиторий. Наш CLA прост и понятен: он требует, чтобы вклад, который вы вносите в любой проект Broid с открытым исходным кодом, был надлежащим образом лицензирован и чтобы у вас были юридические полномочия на внесение таких изменений. Это помогает нам значительно снизить будущие юридические риски для всех участников. Это легко — не требуется отправка факса или печать!
Вы можете поставить цифровую подпись CLA онлайн. Пожалуйста, укажите свой адрес электронной почты в своем первом запросе на включение, чтобы мы могли убедиться, что мы найдем ваш CLA. После того как вы его отправили, вам больше не нужно отправлять его для последующих отправок.
Чтобы продолжать предоставлять сообществу нашу работу с открытым исходным кодом, мы предлагаем общедоступный API. Платные пользователи получают дополнительные функции и ранний доступ к новым интеграциям:
Всего $9,99 в месяц за активную интеграцию
Кросс-браузерная совместимость проекта, поддерживаемая BrowserStack.