Giter VIP home page Giter VIP logo

asterisk-cdr-viewer-mod's People

Contributors

cosmologist avatar prog-it avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

asterisk-cdr-viewer-mod's Issues

Добавьте в инструкцию

Добрый день
чтобы имя файла сохранилось в mysql в поле filename пришлось добавить в файл cdr_mysql.conf

[aliases]
filename=filename

спасибо.

Неправильный выбор дат в условиях поиска

  1. При выборе шаблона "Вчера" устанавливает диапазон дат "вчера + месяц до вчерашнего дня".
  2. При выборе шаблона "Предыдущая неделя" устанавливает диапазон дат "прошлая неделя + месяц до начала прошлой недели".

Для сравнения, скриншот с фильтром "Сегодня"
today

"Вчера"
yesterday

"Предыдущая неделя"
prev_week

Добавить фильтрацию номеров в статистику

Приветствую всех!
Назрел такой вопрос. Нужно сделать фильтрацию номеров в статистике таким образом чтобы входящие внешние номера и исходящие на внешние номера не повторялись.

т.е. если номер 111 звонил на номер +7 000 0000 0000 - 3 раза нужно вывести его один раз (+7 000 0000 0000) и наоборот если номер +7 000 0000 0000 звонил на любой входящий больше одного раза отобразить его один раз (+7 000 0000 0000).

Вся эта ерунда нужна чтобы собиралась статистика без дубляжа номеров (бред выданный маркетологом).

Если кто-то сталкивался с таким извращением просьба натолкнуть куда копать. А то пока приходит в голову только бред сивой кобылы и маты в сторону того кто эту ерунду придумал.

Как я вижу это все: Добавить чекбокс в котором прописано условие выводить только один номер, но что делать с операторами? Ведь принять или перезвонить клиенту могут разные операторы по одному и тому же вопросу...?

Ps.: Сервер VPS ubuntu 12.04, Asterisk 13, Астер патчился на предмет дубляжа входящих звонков когда при входящем в статистику выводился ответивший на звонок оператор и все не ответившие.

Ошибка mysql

При выборе доп. опции Параллельные звонки выдается ошибка:
PDO::errorInfo(): Array ( [0] => 42000 [1] => 1064 [2] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY unix_timestamp(calldate) ASC LIMIT 100' at line 1 )
Версия сервера: 5.5.47-0+deb8u1 - (Debian)
Веб-сервер nginx/1.6.2
Версия клиента базы данных: libmysql - 5.5.47
PHP расширение: mysqli

Дамп прилагаю
localhost.sql.zip

Скрипт создания таблицы, ошибка в MariaDB

Не отрабатывает вот это

 FOR EACH ROW BEGIN
	IF ((NEW.dst = 's' OR NEW.dst = '~~s~~') AND NEW.realdst != '') THEN 
		SET NEW.dst = NEW.realdst;
	END IF;
END

Пишет

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '.dst = NEW.realdst;
END IF;

Можно ли подружить Viewer с несколькими базами?

Добрый день.
Если есть несколько серверов каждый из которых хранит базу локально. На каждом установлен CDR-Viewer.
Есть ли возможность без выноса базы данных на отдельный общий сервер с помощью CDR-Viewer тянуть инфу сразу с нескольких серверов?

Крякозябры вместо русского Callerid(name)

Использую mariadb, в etc/odbc.ini charset=utf8, /etc/my.cnf тоже настроила. Если вводить русский текст из веб-интерфейса в поле комментария, все ок, в базе из командной строки тоже хорошо отображается. А если из имени абонента- крякозябры, хотя на самом телефоне (Cisco) правильно русский отображает, когда звонок приходит. CentOS 7. Где еще копать?


[mysqld]
...
character-set-server=utf8
collation-server=utf8_unicode_ci
init-connect='SET NAMES utf8'

[client]
# default-character-set is a client option, not a server option
default-character-set=utf8

[mysql]
default-character-set=utf8

Тарифы на вечера и выходные

Добрый день, оператор связи дает тарифы для вечеров и выходных отличные от стандартных. Как можно обыграть данную ситуацию?

Тарифы

@prog-it
Добрый день, благодарю за огромную работу которую вы проделали создавая данный проект.

Есть пару вопросов, по поводу тарифных планов.
У меня в диал плане есть несколько особенностей, которые хотел бы реализовать,
городские и межгород настроил без проблем, а вот на сотовые есть несколько направлений:
стандартные набор через 79 и 89 + 10 знаков
и не стандартный набор через альтернативного оператора 079 и 089 + 10 знаков.
т.е. длина сотового номера может быть 11 или 12 знаков.

пытался реализовать корректное отображение стоимости звонка, но в итоге, ничего не получилось.
реализацию производил через REGEXP
в файле my_callrates.inc.php.new

                                            "Мобильные"                     => "(dst REGEXP '^[89|79][0-9]{8}|^[079|089][0-9]{9}')",
                                            "Россия"                        => "(dst REGEXP '^[78][^9][0-9]{8}') and (dst NOT REGEXP '^[89|79][0-9]{8}|^[079|089][0-9]{9}')"

но этот код как то не корректно работает, то Межгород не считает, то сотовые в два раза больше.
Не могли бы подсказать, как лучше реализовать подсчет сотовых с различной длинной номера?

Не отображаются записи в панели

Добрый день.
Записи сохраняются нормально, в колонке "filename" имя фиксируется.
Однако в панели записи не отображаются. Пробовал менять права на файлы/папки, менять владельца - без эффекта.

Загрузка файлов

Здравствуйте, подскажите пожалуйста.
Возможно ли реализовать работу загрузки с модуля аудио файлов?
Если путь к файлам и формат аудиозаписей такой как у меня:
/var/spool/asterisk/monitor/год/месяц/день/external-100-+380637581052-20150722-173232-1437575552.2.wav

PS
Help please!
Я разбираюсь в php не очень.

Как добавить триггер без вкладки триггер в phpmyadmin

Здравствуйте! Очень нужен ответ на вопрос в заголовке.

PhpMyAdmin древний. Вкладки триггеры нет. Права на создание триггеров имеются.
Через SQL пробовал добавлять по мануалам, но постоянно пишет что синтаксис неверный. Явно где-то косячу.

Apache/2.2.22
Версия MySQL-клиента: 5.5.53
Phpmyadmin 3.4.10.1deb1

BEGIN IF ((NEW.dst = 's' OR NEW.dst = '~~s~~') AND NEW.realdst != '') THEN SET NEW.dst = NEW.realdst; END IF; END

Формат хранения записей звонков по папкам

Добрый день, версия 2.2.4
Раскладываю звонки по папкам 2015/12/14 астериском, выбираю формат 4 в конфиг файле. Не видны звонки. Если же звонки в одной папке и выбран формат 0, то всё нормально. подскажите куда копать

Не показываются записи звонков за прошлые дни

Ситуация следующая. Есть VPS сервер c астериском. Звонки пишутся на Яндекс.Диск (Диск примонтирован в /mnt/backup. Все работало замечательно пока хостер не провел плановую замену оборудования. Конфиги все те что и были раньше. Все пишется, крутится но звонки в CDR доступны только за текущий день.
Кто-то сталкивался? В какую сторону смотреть?

$system_storage_format = 2;
Записи переносятся скриптом по подпапкам раз в стуки.

short open tag

В коде иногда используется . не у всех включен short open tag. Мелочь, но пришлось просмотреть код чтобы понять почему не работает отключение условий выборки из конфига.
И еще поправил у себя условие в func.inc.php в функции formatFiles в коментах Аудио, Архив, Факс
c filesize($rec['path'])/1024 >= $system_fsize_exists........
на $row['disposition'] == 'ANSWERED'
может не разобрался во всей логике, но в данном случае не режутся короткие разговоры

Многотенантная система

Хочу поставить вашу систему статистики, понравилась по виду и описанию.
Есть ли возможность разделять статистику по предприятиям со своими логинами и паролями (не один логин на предприятие, т.к. кому-то даем возможность удалять аудиозаписи, кому-то нет).
Хотелось бы добавлять не каждый номер к предприятию, а определять соответствие контекстов и предприятий (2-4 контекста на 1 предприятие, т.к. в предприятии номера разделены по контекстам в зависимости от прав выхода на городские линии, либо старший контекст). Если в предприятии 100 номеров, удобнее конечно контекстом определить принадлежность предприятию.
Как вариант, префиксы номеров начинающиеся на определенные цифры, принадлежат такому-то предприятию.
Можно такое сделать или может уже сделано?

Ошибка в макросе для extensions.conf

День добрый, в Readme у вас ошибка в макросе для старого диалплана, в строчке

exten => s,n,Set(CDR(realdst)=${called});

вместо названия переменной ${called} должно быть ${ARG2} т.к. в старом синтаксисе в макросе не описываются имена переменных, а просто идут по счету ARG1 ARG2 и т.д.

Не верный период "текущая неделя"

При выборе периода "текущая неделя" в 2.2.5 выставляется период на месяц вперед.

К примеру сегодня 29.11 при выборе периода "текущая неделя" устанавливается с 28.12.2016 по 04.12.2016

баг в файле /inc/load.php

в файле /inc/load.php:

require_once 'inc/Sendfile.class.php';`

при копировании через Windows имя становится строчным.

версия 2.6.0

html5/js аудио плеер

Флеш плеер очень плохая идея. Есть ли возможность заменить его на html5/js плеер. Как это сделано в cdr freepbx 11.17?

Дублирование статистики

Ещё раз скопирую суть проблемы.
Есть небольшая проблема, если звонок приходит допустим в очередь (или сразу на несколько пиров), то в cdr падают записи о том что вызываются одновременно все пиры, следовательно веб интерфейс берёт все эти записи и получается дубляж с одним и тем же номером и временем.
Допустим в очереди 5 пиров, пришёл звонок, на него ответили. В статистики видно "Номер звонящего 1" - "номер назначения 2"
и таких записей будет 5 (потому что в очереди 5 пиров), только 4 из них будут "не отвечены", а один отвечен. Аналогично с файлами записи, для всех 5 будут одинаковы. Можно как это поправить?

Версия Asterisk 13.4.0

Кусок диал плана по которому проходит звонок
[macro-recording]
exten => s,1,GoToIf($["${RECORDING}" = "1"]?yes:no)
exten => s,n(yes),Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)}-${ARG1}-${ARG2});
exten => s,n,Set(CDR(filename)=${fname}.wav);
exten => s,n,MixMonitor(${DIR_RECORDS}${fname}.wav,b);
exten => s,n(no),Verbose(Exit record);

[in-5500]
exten => s,1,Answer()
exten => s,n,BackGround(hello)
exten => s,n,WaitExten(5)
exten => 1,1,Playback(hello-en)
exten => 1,2,Goto(1212,601,1)
exten => i,1,Goto(1212,601,1)
exten => t,1,Goto(1212,601,1)
exten => _[1-4]XX,1,Dial(SIP/${EXTEN})
exten => s,n,Hangup()

[1212]
exten => 601,1,Answer()
exten => 601,n,Macro(recording,${CALLERID(num)},${EXTEN})
exten => 601,n,Queue(call-center,tT)
exten => 601,n,Hangup()

В очереди находится 5 пиров.
Если вместо очереди сделать так "exten => 601,n,Dial(SIP/400&SIP/402&SIP/403&SIP/429&SIP/442,,tTo)" ситуация аналогичная, в базу пишутся одновременно звонки на все пиры, следовательно веб интерфейс их показывает, тем самым захламляя статистику.
p.s. Аналогичная ситуация даже если везде стоит экстеншен s.
Вот так в интерфейсе это выглядит:
2015-08-04 11:38:25 Отвечено 896----7735 s 00:15 0.00 Queue SIP SIP
2015-08-04 11:38:25 Не Отвечено 896----7735 s 00:06 0.00 Queue SIP SIP
2015-08-04 11:38:25 Не Отвечено 896----7735 s 00:06 0.00 Queue SIP SIP
2015-08-04 11:38:25 Не Отвечено 896----7735 s 00:06 0.00 Queue SIP SIP

Да я понимаю что веб интерфейс сам ничего не дописывает, но может быть можно как то это поправить? Например где нибудь в астериске "отключить" такое поведение или ограничить условием в веб интерфейсе, что если звонок с одним и тем же индификатором и временем, то показывать только отвеченный, если отвеченного нет, то показывать 1 "не отвеченный".

Заранее спасибо.

Обрыв воспроизведения записи

Релиз 2.3.2

После 5 секунд прослушивания файла в браузере Google Chrome (Версия 56.0.2924.87) воспроизведение прерывается с надписью "Файл не найден". В Mozilla Firefox все корректно.

2017-02-13_095937

не виден файл записи разговора

Добрый вечер,
elastix 2.5.0 (asterisk 11.17.1)
в отчете Asterisk-CDR-Viewer-Mod не вижу файлов с записями разговоров, в статусе answered. В строке файл - перечеркнутый серый круг. Звонки 'не отвечено' и 'занято' можно прослушать и скачать.
При этом сам файл записи существует и лежит в /mnt/zapis/2016/09/22, uid файла и данные в отчете совпадают.
Переменная $sysytem_monitor_dir = '/mnt/zapis';
$system_storage_format = 4;
Можно ли как-то включить дебаг и посмотреть

Выборка из cdr

| 2016-09-22 21:53:49 | 404 | 404 | 89043042877 | from-internal | SIP/404-00006168 | SIP/dr2203121-00006169 | Dial | SIP/dr2203121/89043042877,300, | 18 | 11 | ANSWERED | 3 | | 1474563229.24936 | | /mnt/zapis/2016/09/22/out-89043042877-404-20160922-215349-1474563229.24936.wav | 404 | 404 | 73512203121 | | |

Доработка под заказ.

Добрый день.
Как с вами связаться чтобы обсудить доработку модуля под наши требования и будет ли вам это интересно ?
Спасибо.

Dial с опцией "M" и поле filename

Добрый день.
Не могу понять один момент. Если использовать в плане набора конструкцию:
exten => 74991233333,1,Macro(rec,${CALLERID(num)})
exten => 74991233333,n,Dial(SIP/1002,30)
exten => 74991233333,n,Hangup()
то всё нормально записывается в базу данных, в том числе и в поле filename, а вот если использовать:
exten => 74991233333,1,Dial(SIP/1002,10,M(rec^${CALLERID(num)}))
exten => 74991233333,n,Hangup()
то в базу пишутся все поля, кроме filename
При этом на консоле Астериск показывает, что макрос нормально отработал.
Хотелось бы понять с чем это связано.

Не возможно скачать и прослушать за прошлые даты

-1
Привет, возможно помочь мне рушить проблему.
Не возможно скачать и прослушать запись за прошлые даты, за текущую видит и скачивает и проигрывает, вчерашние уже нет, на след. день та же картина... файлы в каталоге есть, файлы разложены по папкам с датой.

Languages versions

Hi,
Do you have different language versions (like in English) ?

Thanks

привет,
У вас есть версии на других языках (например, английский)?
Спасибо.

Автоматическое удаление старых записей разговоров

Не нашла у вас в Readme, есть ли такая возможность. Насколько я знаю, скрипт в Интернете есть. Удобно было бы настраивать удаление по времени хранения: например храним 60мес (через веб задавать сколько храним), все более старые удаляем (по истечении 60 мес файлы удаляются каждый день по 1 дню). Также учитывать фактор оставшегося места на диске: если места осталось меньше 500 Мб (размер определяем), удаляем часть файлов (например за 1 день).

Не работает скрипт dl.php?

Приветствую!

Начинаю тестировать, и не работает скачивание файлов.
Оговорка: у меня файлы размещаются в /monitor/$uniqueid.ogg

Все ссылки в ACVM в столбике "Файл" идут с зелеными стрелками (а-ля файл есть), но при этом при наведении на них - запрашивается пустой URL: http://url/v2/dl.php?f=
А я так понимаю, что по дефолту, он должен спрашивать "dl.php?f=$fname.

Вопросы:
а) Должен ли урл по дефолту быть пустым (dl.php?f=) ?
б) Как сделать, что бы он запрашивал $uniqueid? Вариант замены в inc/func.inc.php
строки
$recorded_file = $row['filename'];
на строку
"$recorded_file = glob($system_monitor_dir . '/*' . $row['uniqueid'] . '.' . $system_audio_format); "
не взлетел.

Подскажите почему не получается прикрутить авторизацию?

Добрый день.
По инструкции в Readme надо сделать так:
htpasswd -c /path/to/.htpasswd admin
Location "/path/to/script"
AuthName "Asterisk"
AuthType Basic
AuthUserFile /path/to/.htpasswd
AuthGroupFile /dev/null
require valid-user
/Location

htpasswd создал.
htpasswd -c /var/www/html/Asterisk/.htpasswd admin

Создал в /etc/apache2/conf-enabled/aster.conf с содержимым:

Location "/var/www/html/Asterisk/index.php"
AuthName "Asterisk"
AuthType Basic
AuthUserFile /var/www/html/Asterisk/.htpasswd
AuthGroupFile /dev/null
require valid-user
/Location
И захожу без авторизации.
Что я делаю не так?

проигрывание GSM файлов

Скачал, настроил, файлы скачиваются, но при попытке воспроизвести *.gsm плеер просто молчит. Отсюда вопрос, может ли встроенный плеер играть эти файлы и если нет то есть ли возможность прикрутить другой поддерживающий данный формат?

Не показывает записи разговоров

Добрый день.
Сегодня заметил - много разговоров/звонков, запись которых на самом деле есть, но Asterisk-CDR-Viewer-Mod не показывает записи разговоров.

Массово такое замечено за вчерашний день. Изменений никаких не вносил.
В "родном" CDR поле filename заполнено, и сам файл лежит в соответствующей директории.

Не могу понять, почему не отображаются записи иногда.

Кто-нибудь с подобным сталкивался?

Вот выборка из SQL:

*************************** 1. row ***************************
calldate: 2016-07-23 12:40:17
clid: "Reception2" <102>
src: 102
dst: 83522450799
dcontext: office-uc
channel: SIP/uc102-000009b8
dstchannel: SIP/3522XXXXXX-000009b9
lastapp: Dial
lastdata: SIP/3522XXXXXX/83522yyyyyy,30,m(default)
duration: 40
billsec: 25
disposition: ANSWERED
amaflags: 3
accountcode: out-office
uniqueid: 1469259617.2501
userfield:
filename: 1469259617.2501-2016-07-23-12_40-102-83522yyyyyy.mp3
did:
recordingfile:
cnum:
cnam:
outbound_cnum:
outbound_cnam:
dst_cnam:

А вот как этот звонок виден в A-CDR-V-M (нет значка "прослушать" и "скачать", будто запись отстутсвует):
http://rgho.st/8FRxGlHbd

На самом деле файл записи есть:

root@pbx:~# ls -lh /var/calls/1469259617.2501-2016-07-23-12_40-102-83522450799.mp3 
-rw-rw-r-- 1 asterisk asterisk 100K Jul 23 12:40 /var/calls/1469259617.2501-2016-07-23-12_40-102-83522450799.mp3
root@pbx:~# 

Нет записи в столбец filename

У нас идет подключение к MySQL через ODBC.
И никак не можем сделать так, чтоб Asterisk знал о существовании этого столбца в таблице.

Не проигрываются файлы звонков и не скачиваются (mp3)

Добрый день,
Подскажите пожалуйста, не проигрываюся файлы,
пути:
http://192.168.0.2/dl.php?f=MTQ0MzUyMzY3NS44NS0yMDE1LTA5LTI5LTEzXzQ3LTEwMDEtMTAwMi5tcDM=
http://192.168.0.2/dl.php?f=MTQ0MzUyMjg1Ny44Mi0yMDE1LTA5LTI5LTEzXzM0LTEwMDEtNzQ5NTM2ODg0OTAubXAz
http://192.168.0.2/dl.php?f=MTQ0MzUyMjYwMy43My0yMDE1LTA5LTI5LTEzXzMwLTEwMDEtMTAwMi5tcDM=
http://192.168.0.2/dl.php?f=MTQ0MzUyMjMyNy42Ny0yMDE1LTA5LTI5LTEzXzI1LTEwMDEtMTAwMi5tcDM=
на сервере файлы mp3 в /var/calls

в конфиге значение не 1.

Где можно эти пути поправить?

Спасибо

Авторизация пользователей

Здравствуйте! Создал пользователя admin. Соответственно в файл .htpasswd и прописал
$admin_user_names = "admin"
Авторизация работает. Создал пользователя, равным экстеншену в .htpasswd (к примеру 101).
Но когда захожу под ним, вижу все так же, как и под админам "всем все". Сервер - nginx
Как решить проблему?

uft8 кодировка

В астериске в настройках mysql поставил отравлять записи в cdr в utf8, теперь все записи в самой базе отображаются корректно, раньше были кракозябры в базе, но нормально выводилось в Asterisk-CDR-Viewer-Mod, теперь всё правильно выводится в базе, но вопросы вместо символов в Asterisk-CDR-Viewer-Mod. В браузере стоит utf8. Как пофиксить?

Пара вопросов

Здравствуйте. Пару дней назад наткнулся на вашу разработку. Все просто круто! Но, как всегда есть но. Нет возможности конвертировать все в mp3. Есть ли какая то возможность воспроизводить родные wav файлы? И еще, в стандартном cdr FreePbx можно при поиске по входящему номеру писать несколько номеров через запятую. Можно ли реализовать это и в вашей версии? Иногда нужно искать сразу по нескольким номерам. Заранее спасибо!

Проигрыватель WAV-файлов

Добрый день,

Есть ли возможность прикрутить проигрыватель WAV-файлов?
Например этот - https://github.com/datacompboy/WavPlayer
Или вообще встроенный в браузер. Писать в mp3 астериском требует слишком много ресурсов, да и WAV занимают гораздо меньше места.

К сожалению своих знаний нехватает чтобы поправить php :(

Заранее благодарен.

подключение к sqlite

Есть ли возможность настройки подключения, к sqlite вместо подключения к mysql

Интерфейс показывает, что файла записи нет.

Добрый день.
Постарался максимально точно настроить, как описано в документации.

  1. Файлы mp3 в нужной структуре есть, даже в 3-х вариантах сразу (1, 2, 3/4), что бы исключить проблему на этом этапе.
  2. Файл конфигурации https://gist.github.com/clangendum/1485c85d92b9de0d69b1.
  3. Запись в MySQL идет корректная, в поле filename, сверял названия, все ок.
  4. В режиме отладки все ок, ошибок нет, только Notice: Undefined index...

Вообще не понимаю куда копать. Подскажите, пожалуйста, хотя бы вектор.
Заранее большое спасибо.

cdr
ftp

В столбце 'Файл ' отсутствуют значки прослушивания и удаления

Приветствую.
Ubuntu 14.04.5 x64, Asterisk 11.6, ACDR-Viewer-Mod 2.6
В столбце 'Файл ' присутствует только значек на скачивание записанного файла. Возможности прослушать запись нету. Сам файл пишется нормально и его можно скачать.
Я что-то не донастроил?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.