LINUX.ORG.RU
ФорумTalks

Больше опенсорса хорошего и разного

 , , ,


0

2

Если вкратце - компания в которой я сейчас работаю решила заопенсорсить свои творения - https://gitlab.com/flamesgroup. Предвосхищая тупой вопрос «Почему не гитхаб?» - потому что используем GitLab CI и локальный GitLab+Mattermost.

Компания пилит железо и софт для VoIP->GSM шлюзов Antrax. Что в открытых исходника может быть интересно для мимокрокодилов:

  • IAX2 на Java;
  • библиотечка на Java для взаимодействия с YATE;
  • модуль для YATE с G.72[3|9] на основе Intel IPP (сомнительно).

Для вовлеченных в тему:

  • открыто midlware - можно к существующему софту приклепать свое железо и наоборот(прошивки и железо не открывали).

В общем все, может кому будет интересно.

IAX2 на Java

ээээ... оно как, нормально работает??

библиотечка на Java для взаимодействия с YATE

какого именно взаимодействия? и кстати - можо ли прицепить к астеру?

upcFrost ★★★★★
()

Кстати, ТС, в коде IAX-либы комментов нет от слова вообще. понятно что опенсорс, но если будет время - добавь плз, а то даже javadoc сгенерить не выйдет. в примере комментов тоже нету, а вот они прямо таки критичны.

плюс раз уж мавен - было бы круто залить либу в центральный реп, или хоть куда-то где не придется каждый раз компилить ее самому

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)
Ответ на: комментарий от Venediktov

Там несколько проектов. GPLv3/MIT/Apache2.0

Confucij
() автор топика
Ответ на: комментарий от upcFrost

Нормально работает, после небольшой подстройки GC даже на шелезяке с Allwinner A20/1Gb 8 каналов тянет без слышимых, для меня, лагов.

У YATE есть возможность подключать внешних слушателей на ее внутреннюю шину сообщений, а через них уже делать что хочешь( мы делаем роутинг). Для Астера более чем бесполезна.

Confucij
() автор топика

Ты бы причесал новость, разъяснил непонятные для сферического в вакууме линускоида слова и запостил бы на главную. Мелочь, а твоей компании «пиар»...

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Я не был уверен, что это много кому тут нужно поэтому ограничился темой. Если кому-то будет интересно то да, распишу подробнее/отвечу на вопросы.

Confucij
() автор топика
Ответ на: комментарий от Confucij

Вообще-то интересно должно быть Вам. А так, это вполне себе информационный повод по тематике сайта. Конкретно мне этот софт не интересен, но IMHO повод есть повод.

Evgueni ★★★★★
()
Ответ на: комментарий от Confucij

Нормально работает, после небольшой подстройки GC даже на шелезяке с Allwinner A20/1Gb 8 каналов тянет без слышимых, для меня, лагов

ну, не хочу показаться занудой, но 8 каналов на А20 это достаточно мало. Первая RPi с астером вытягивает в режиме проксирования 10 каналов без лагов, чуть лагает на 15, и ложится после 20 каналов (без тяжелого перекодирования, разумеется). А20, да еще и с гигом мозгов, должен вытянуть раза в полтора-два больше.

было бы круто (не для опенсорса, а для готового коммерческого продукта в железе) держать где-нибудь график типа количество каналов к загрузке железа, и в случае апдейта показывать на нем же типа «вот теперь стало бодрее».

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Библиотека писалась для использования на железке с 8 каналами поэтому я 8 каналами и оперирую) А так да, 8 каналов G729 <--> PCM, OpenVPN и запас на всяки случай.

Confucij
() автор топика
Ответ на: комментарий от Confucij

8 каналов G729 <--> PCM

а, вот это уже куда лучше. я уж подумал что это на А20 8 каналов PCM-PCM предел. если перекодировать, то вполне сойдет

upcFrost ★★★★★
()
Ответ на: комментарий от Deleted
    if (commandE2A instanceof MessageRequestCommandE2A) {
        handleReceiveMessageRequestCommand((MessageRequestCommandE2A) commandE2A);
      } else if (commandE2A instanceof MessageResponseCommandE2A) {
        handleReceiveMessageResponseCommand((MessageResponseCommandE2A) commandE2A);
      } else if (commandE2A instanceof InstallCommandE2A) {
        installCommandTransaction.handleResponse((InstallCommandE2A) commandE2A);
      } else if (commandE2A instanceof UninstallCommandE2A) {
        uninstallCommandTransaction.handleResponse((UninstallCommandE2A) commandE2A);
      } else if (commandE2A instanceof WatchCommandE2A) {
        watchCommandTransaction.handleResponse((WatchCommandE2A) commandE2A);
      } else if (commandE2A instanceof UnwatchCommandE2A) {
        unwatchCommandTransaction.handleResponse((UnwatchCommandE2A) commandE2A);
      } else if (commandE2A instanceof SetlocalCommandE2A) {
        setlocalCommandTransaction.handleResponse((SetlocalCommandE2A) commandE2A);
      } else {
        logger.error("Unknown CommandE2A [{}]", commandE2A);
      }

А вот эта хрень в джаве ок? В плюсах за такое убивают.

Stil ★★★★★
()
Ответ на: комментарий от Deleted

Показал Java-разрабам. Уже даже issue завели. Фидбек это приятно)

Confucij
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.