Добрый день, коллеги!
По просьбе товарищей решил реализовать мелкий проект на MG. До этого имел дело с LDK-300.
И вот какой вопрос возник - в станции предполагается 2 интерфейса для связи с другими АТС: VoIP - с цыской (тут все ясно) и PRI с NEC. АТС NEC отдает как городские номера, так и короткие 4-х значные (местные). Соответственно, с MG так же должна быть возможность звонить на короткие номера АТС NEC.
Вопрос: получается, что за платой PRI есть как город(выход через префикс 9 например), так и NET (4-х значные номера). Как в таком случае настраивается MG ?
Мне представляется такой вариант: плата дает линии 1-31. Объявляем линии 1-15 SIP/PRI(PGM 161-1-1) CO Outgoing Group Number 1 (PGM 160-3), линии 16-31 QSIG (PGM 161-1-3) CO Outgoing Group Number 2 (PGM 160-3).
В PGM 321-3 указываем CO Group Number 2. Нумерацию и т.д. дописываем...
Будет оно так работать ?
30, да. Задумался и описался. 30B+D.
harris, спасибо большое. Начну тогда поставку прорабатывать.
PS По DECT-у вопрос - тестовый режим в стандартных трубках есть или надо спецтрубу/спецприбор ?
Да, GDC-400H и 450H.
И последние вопросы - MG-MPB100 сколько VoIP соединений в G.729 умеет ? Или надо в любом случае MG-VOIB8 брать ? MG-VMIB по-прежнему включает в себя функции MG-AAIB ?
1)4, не обязательно.
2)да
Еще вопрос:
Как считать нагрузку по напряжениям(+5,+30) и тайм-слоты ? Сколько кто жрет ? В Hardware Description and
Installation Manual данных не нашел.
Как я понял, всего не более 144 TS на KSU.
108 внутренних абонентов на ящик, 138 портов на ящик. вот и все ограничения.
Ага. Спасибо. Если ставится второй ящик MG-EKSU, то в него ставится только б/п ? А как он стыкуется с первым ? С ним (MG-EKSU) кабель в комплекте ?
Коллеги, по ходу общения с NEC-овскими телефонистами возник вопрос - NEC умеет на ISDN PRI только user-side.
Вопрос - MG-PRIB может быть network-side ?
NEAX-7400 - увидишь - обходи стороной :-)
Харрис, по твоему опыту сколько метров меди станции между собой выдерживают ?(E1<->E1)
Тут вопрос возник по кросс-совместимости GDC-600B и репитера KIRK WRFP.
Последний соответствует DECT/GAP и в принципе должен работать с любым DECT-оборудованием, поддерживающим GAP-профиль. Вопрос в том - насколько стабильно это будет жить с GDC-600B и будет ли работать handover ?
1) По поводу длины E1: в моей практике не было случаев, когда длина линии превышала 200 м.
2) Увы, по поводу репитера нечего не могу сказать, мне не приходилось сталкиваться с ним.
В общем, процесс закупа пошел.
Базовая версия - станции по E1. Если не пробьет - пара G.SHDSL-модемов.
Дект попробую с кирковскими репитерами скрестить. В конфигурации станции заложено 4 БС.
Ну и стык с цыской по h.323
Отчет в эту тему по результатам напишу.
Коллеги, а как нонче на MG ключи лицензионные вводятся ?
дефолтовые настройки станции. Харрис, не подскажете, каков логин/пароль для этого уровня ?
Спасибо, разобрался, ключи скормил.
Рано я отрапортовал.
Через Install Lock Key ни SIP ни NETWORK не встали.
Через maint q w встал SIP. NETWORK не встал (пробовал все слоты/ячейки от 0 до 9).
Причем после того, как встал SIP, его сразу стало видно в разделе Install Lock Key.
В понедельник попрошу проверить правильность генерации ключа.
В процессе скрещивания с цыской обнаружил следующее:
1. В h.323 входящий на ipecs вызов идет в slow start, исходящий - в fast start(в соответствии с настройкой). Первое неочевидно.
2. При звонке со стороны цыски на lg нет гудков в соответствии с прогрессом соединения. Возможно что что-то на стороне цыски.
3. Каков должен быть service type в пгм 160 ? Работает и normal и did по факту
4. При звонке с цыски на ipecs dect кнопка спроса декта не прекращает звонок. Трубка выключает звук и пишет ignoring и все. В h.323 при этом ничего не происходит.
5. Как нынче трассировать voib что на борту mpb100 и prib ?
1. Требуется или что-бы можно было тип старта настраивать (в идеале), или хотя бы задокументировать, что inbound только slow.
Обычно бывает так:
Enable inbound faststart ?[ ]
Inbound faststart codec ?[ ]
Enable outbound faststart ? [ ]
Outbound faststart codec ? [ ]
2. VOIP / QSIG(H450)
3. Без анализа. Заметил, что при этом меняется надпись на dect-е: int/ext
4. А как тогда отбить не снимая ?
PS Имя звонящего со стороны ipecs в display ie не стали все-же доделывать ? А о оно всегда передает iPECS-MG VOIP - B4-0E-DC-B0-07-65
====== DISPLAY INFO = iPECS-MG VOIP - B4-0E-DC-B0-07-65
1. Да, ПГМ 361 влияет только на outbound call. Inbound остается slow/normal.
2. Спасибо, попробую.
PS Помните тот разговор про ipLDK 100 и имя звонящего ? http://www.artcom.ru/forum/index.php?showtopic=7530
То же самое и тут. Вопрос одного поля.
PPS Трассировать то как ? :-) PRIB и VOIB в составе MPB100 соответтвенно.
Даже в том виде, как было в сотке ? Жалко. А то мне завтра встреча с NECом предстоит, трассировка могла бы пригодится.
PS Harris, а Вы не в курсе, если транк по sip поднимать, имя все равно ездить не будет ?
Харрис, спасибо, завтра будем воевать.
В общем по ringback (который КПВ):
Как оказалось, это так себя iPECS ведет. Несмотря на то, что в h.323 виден PI=1,3,8 и цыска корректно переносит это дальше в isdn, проключая аудио-поток, кпв не появляется. Почему, пока сказать затрудняюсь. То-ли iPECS rtp открывет а тон не генерит, то ли она вообще rtp до поднятия трубки не открывает - сказать прямо сейчас затрудняюсь.
Соответственно, VOIP / QSIG(H450) или H323 для CO на ситуацию никак не повлияло (что было ожидаемо).
В качестве текущего решения используется такое:
dial-peer voice 60 voip
tone ringback alert-no-PI
description iPEKS-MG 52XX
translation-profile outgoing villa-b_translation
destination-pattern 47..$
progress_ind setup enable 3
progress_ind alert strip 1
progress_ind alert strip 8
progress_ind progress enable 8
progress_ind connect enable 8
voice-class codec 10
voice-class h323 5
session target ipv4:172.16.18.112
dtmf-relay cisco-rtp h245-alphanumeric h245-signal rtp-nte
fax protocol t38 ls-redundancy 0 hs-redundancy 0 fallback cisco
То есть, по факту КПВ вырабатывает цыска.
Если интересно, расшифровку команд диал-пира (команда progress_ind alert strip вообще недокументирована) и отладку со стороны цыски смогу сделать позже.
Вот как это выглядит в SIPе:
Стандартное поведение, никаких вендорских расширений.
Sent:
INVITE sip:4021@172.16.18.253:5060 SIP/2.0
Via: SIP/2.0/UDP 172.16.18.1:5060;branch=z9hG4bK14501F04
Remote-Party-ID: "Galkin Viktor" <sip:1341@172.16.18.1>;party=calling;screen=no;privacy=off
From: "Galkin Viktor" <sip:1341@172.16.18.1>;tag=A03E27B8-1E25
To: <sip:4021@172.16.18.253>
Date: Mon, 14 Feb 2011 16:29:38 GMT
Call-ID: 735EDFEB-378E11E0-891DDFAC-3826D92C@172.16.18.1
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 1935397515-932057568-2397241379-1592804704
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
CSeq: 101 INVITE
Max-Forwards: 70
Timestamp: 1297700978
Contact: <sip:1341@172.16.18.1:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Disposition: session;handling=required
Content-Length: 462
v=0
o=CiscoSystemsSIP-GW-UserAgent 8336 7497 IN IP4 172.16.18.1
s=SIP Call
c=IN IP4 172.16.18.1
t=0 0
m=audio 17654 RTP/AVP 0 18 116 117 121 101 19
c=IN IP4 172.16.18.1
a=rtpmap:0 PCMU/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=yes
a=rtpmap:116 iLBC/8000
a=fmtp:116 mode=20
a=rtpmap:117 AMR/8000
a=fmtp:117 octet-align=1
a=rtpmap:121 frf-dialed-digit/8000
a=fmtp:121 0-15
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:19 CN/8000
Received:
SIP/2.0 180 Ringing
Date: Mon, 14 Feb 2011 16:29:37 GMT
Call-Info: <sip:172.16.18.253:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, PUBLISH
From: "Galkin Viktor" <sip:1341@172.16.18.1>;tag=A03E27B8-1E25
Allow-Events: presence
Remote-Party-ID: "KurbatovAS" <sip:4021@172.16.18.253>;party=called;screen=yes;privacy=off
Content-Length: 0
To: <sip:4021@172.16.18.253>;tag=d2186010-bcf2-4ea5-a321-a831ef3b471e-29400877
Contact: <sip:4021@172.16.18.253:5060>
Call-ID: 735EDFEB-378E11E0-891DDFAC-3826D92C@172.16.18.1
Via: SIP/2.0/UDP 172.16.18.1:5060;branch=z9hG4bK14501F04
CSeq: 101 INVITE
Оба имени, оба номера.
Цепочка звонка была такая: VoIP(SCCP)->TDM(E1)->VoIP(SIP)->VoIP(SCCP)
Харрис, я просто снял с того, что было. Могу тоже самое снять между например колл менеджером и x-lite, принципиально ничего не изменится.
Скинни - он между аппаратом и станций (Цыско Колл Менеджер)
Если развернуто, то схема такова - есть колл менеджер экспресс 1 (АТС1) - с ним работает первый пул IP- телефонов по протоколу sccp, далее есть маршрутизатор (так называемый Унифицированный Пограничный Элемент - CUBE - Cisco Unified Border Element) - они работают между собой по h.323. CUBE уже работает с другими сетями - IP, TDM. Такова идеология. В данном случае схема такова: телефон(VoIP,SCCP)->колл манагер1->CUBE1->E1(primary-qsig, и то только для того, что бы видеть имя НАБРАННОГО абонента, а так достаточно primary-net5 aka euroisdn)->CUBE2-SIP->колл менеджер 2-телефон2-SCCP. В этой схеме к CUBE2 подключены: город по E1, CUBE1 по E1, колл менеджер (взрослый, программный, 6.1) по SIP, Avaya по H.323, ipLDK-300 по H.323 и iPECS-MG по H.323. Тот кусок, что я привел, относился к фрагменту цепочки CUBE2-SIP->колл менеджер (взрослый, программный, 6.1.
По сипу ipLDK-100 ВРОДЕ передавала имя, но там были фокусы какие-то с кавычками(то ли непарные, то ли незаэскейпленные, уже не помню). Вот я про iPECS-MG и спросил.
На самом деле - допили корейцы имя в SIP и в H.323 (черт с ними, с H.450) и издай аппликейшен ноты по интеграции с цыской, аваей и нортелом - и ентерпрайз на шаг ближе. Потому как на мой взгляд iPECS-MG от сотки/трехсотки далеко ушла, стала существенно удобнее и вплотную приближается к авайе. Даже зоны появились :-)
Поэтому все что нужно от меня для допиливания фич с именем и т.д. - готов предоставить :-)
В общем, первая фаза прошла успешно. Поток между станциями поднялся, как с qsig так и без. На передачу имен звонящих это не повлияло. :-)
DECT-трубки KIRK в системе прекрасно прописались, CID на них работает. Посмотрим, насколько стабильно это будет себя вести.
Возникла пара вопросов:
1. Как подстроить MTU в IP-стеке станции ? В связи с тем, что на IP-канале между станциями используется PPTP и IPSEC, необходимо вручную уменьшить MTU до 1410, иначе лезут качественные глюки.
2. Есть 4 абонента, которые должны попадать в поток по фиксированным тайм-слотам (!). Это не я придумал, это особенности NECа при выходе в МГТС через медь. Пока виден только вариант с разными CO Group Access Code. Скажите, коллеги, есть ли более изящный вариант ?
1. MTU на TCP ессно.
На стенде по кабелю на одном свитче все работало как часы. Фокусы начались на канале с IPSECом и PPTP.
Выглядит это так:
MG звонит на цыску через IP - все ОК.
Цыска звонит на MG - сигнализация ЧАСТИЧНО проходит до момента согласования кодеков и поднятия rtp, как на slow так и на fast старте. При согласовании кодеков MG вдруг перестает отвечать. Сессия падает по таймауту. При включенном туннелировании(H.245 Tunnelling) сигнализация поднятия трубки ВООБЩЕ не проходит. До кодеков даже дело не доходит.
Такое поведение указывает на дроп пакетов при достижении определенного размера, причем втихаря, иначе отработал бы PMTUD.
Далее - еще смешнее (описываю доступ к станции сквозь IP-канал). Лезем телнетом. Заходим под jennie - хелп по ? выдется. Заходим под jannie - хелп не выдется, сессия вешается.
По web-морде вообще ничего не отображается. Соединение устанавливается и все.
Единственная причина, которую я вижу - не отрабатывает подстройка mss в TCP и за-за большого MTU идет тихий дроп. Почему только в одну сторону - хз.
Похожее поведение было при доступе из локалки в инет, но там все решилось понижением MTU через DHCP.
Понятно дело, что я начну пытаться решить проблему на пограничном роутере, но хотелось бы иметь понимание, можно ли менять хоть как-то MTU у MG.
PS ping до MG ходит как часы - 9+/-1 мс. Потерь ноль. Никаких натов и фильтров нет. Инспекция голосового трафика выключена.
Про замену цифр - спасибо. Буду крутить.
Если размер передаваемого пакета больше mtu канала в который он идет то на границе должна произойти фрагментация - разбивка на более мелкие части и задача эта устройства стоящего на границе этого канала.
Да. Но по пути после клиентского устройства может быть узел, просто дропающий пакеты без отсылки ответного ICMP-сообщения или фрагментации. Так называемый black hole. Я сомневаюсь, что MG умеет обнаруживать такое. Винда вроде умеет, насчет цыски не уверен. Собственно, когда я изначально делал ping test с взведенным DF, то выше определенного размера наблюдался дроп без ответа packet needs to be fragmented but DF set
В общем, план действий такой:
1. На всякий случай выставить clear-df на удаленном маршрутизаторе для IPSEC-пакетов.
2. Подкрутить adjust-mss на цыске.
3. Правильно выставить MTU и IP MTU на pptp-интерфейсе(dialer0 у цыски)
4. До кучи зажать IP MTU на MG.
Я грешу на pptp-концентратор прова. Когда я поднял канал в инет на дефолтовом MTU 1500 и без подстойки mss все по-началу выглядело нормально. В процессе работы обнаружилось, что еху москвы и mignews например грузятся наполовину, рамблер вообще не грузится. В общем была феерия необъяснимая. Гугление натолкнуло на mtu, дальше ping -l NNN -f www.ru и вычисление IP MTU. По итогу инет вроде заработал(еще давно), но на голосе грабли. Будум в общем пилить дальше.
Fixed.
Правильные параметры:
interface Dialer0
description PPTP To Provider
bandwidth 1024000
ip address negotiated
ip mtu 1450
ip pim dense-mode
ip nat outside
ip virtual-reassembly max-fragments 64 max-reassemblies 1024
encapsulation ppp
ip policy route-map clear-df
dialer in-band
dialer idle-timeout 0
dialer string 123
dialer vpdn
dialer-group 1
no peer neighbor-route
no cdp enable
ppp pfc local request
ppp pfc remote apply
ppp encrypt mppe auto
ppp chap hostname SOME
ppp chap password 7 PASSWORD
crypto map osen'<->sd_asa_5520
route-map clear-df permit 10
match ip address 110
set ip df 0
access-list 110 permit tcp any any
interface Vlan400
description Voice VLAN
ip address 172.16.20.1 255.255.255.0
no ip redirects
no ip unreachables
no ip proxy-arp
ip flow ingress
ip nat inside
ip virtual-reassembly max-fragments 64 max-reassemblies 1024
ip tcp adjust-mss 1410
vpdn enable
!
vpdn-group 1
description PPTP To Provider
request-dialin
protocol pptp
rotary-group 0
initiate-to ip 10.21.16.2
ip pmtu
ip mtu adjust
В сухом остатке: PMTUD выключен роут-мапом. IP MTU и MSS выставлены согласно расчетам на бумажке. MTU на Dialer0 дефолтный - 1500
В принципе настройки будут работать для любого PPTP. Только крипто-мап писать на dialer0 не стоит :-)
С этими параметрами вышеописанные глюки с телнетом и вебом до MG исчезли.
Коллеги, вопрос по ПГМ251-252 возник.
Чекбосы Print Conv. Digit и Display Conv.Digit относятся к SMDR ?
По преобразованию номеров: как я понимаю, можно использовать маски.
Admin guide по этому поводу немногословен - допускаются 0-9, *, #, X.
С преобразованиями вида 44455566 -> 1111 все понятно.
А если просто добавляется префикс к набранному номеру, то как будет выглядеть маска ? И вообще, вкратце, как в данном случае работают *, # и X ?
Аналогичный вопрос по ПГМ 263 - можно ли маской отрезать например первые 3 цифры входящего CLI ? (341111->1111)
Спасибо большое.
А как тогда добавляется префикс к набранному исходящему номеру ?(если * - это символ) Через PGM180 - 4 ?
Ага, спасибо. Мы сейчас транзит через NEC крутим, собственно идет игра префиксами.
Дрон, может уточните меня по трссировке:
1. говорим telnet IP_ADDR 5003
2. пароль jennie
3. говорим
t b XX <Enter> (XX - номер слота PRIB)
tm 1206 <enter> (маска MSG, расшифровка типа сообщений)
tm 9302 <enter> (маска IE, расшифровка инф. элементов)
При этом в телнете тишина.(при звонках через поток)
Хотел еще уточнить по фразе "А, так я забыл перед 34, собственно, например, номер группы СО указать, через которую вызов должен осуществляться. " - если строка уже применяется к группе CO, то это как ?(указать номер)
С префиксом я возможно несколько некорректно выразился - интересен более общий случай, например выход в город. При анализе цифр на CO код выхода на группу ("0") мы уже не видим ? Тогда вариант 0->00 например не проходит.
В общем, как показал опыт, можно и через 251-252, и через 180 - AND Digit.
В любом случае, Дрон, спасибо Вам большое.
Всегда. Транзитный код для NECа в город.
2 часть марлезонского балета - DECT. Скрещивались репитеры KIRK (Polycom) WRFP и GDC-600B.
Есть два способа - при помощи хитрой программы и адаптора, либо при помощи особых манипуляций.
Базовое руководство тут - http://enaco.pt/downloads/produtos/14/9963/user_manual_z500_repeater_v07_02_eng.pdf но на вскидку оно не работает. Опытным путем был выявлен рабочий алгоритм:
1. Включаем на MG режим регистрации, держим под рукой трубку, подлежащую регистрации.
2. Втыкаем кабель в репитер более чем на 1 секунду но менее чем на 5. Вынимаем. Ждем 2-3 скунды.
3. Втыкаем кабель. Репитер подмигнет, начнет гореть светодиодом, а спустя 5 секунд начнет быстро мигать светодиодом.(а-ля трель - пауза)
4. Выполняем регистрацию трубки. По завершению процесса репитер начнет мигать быстро и непрерывно, без трелей.
5. На трубке делаем off-hook и нажимаем цифру 2. Репитер должен прекратить быстро мигать, мигнуть 2 раза и продолжить быстрое мигание. Делаем on-hook. Если это был первый репитер на базовой станции - то используем цифру 2, исли 2-й - то 3 и т.д.
6. Делаем off-hook. Репитер должен прекратить быстрое мигание и один раз медленно мигнуть. Нажимаем "*". Светодиод должен погаснуть на 2 секунды и репитер, закончив синхронизацию с базой, перезапустится. Нормальный режим работы - непрерывное горение светодиода и его мигание при снятии трубки на декте в радиусе репитера.
Надеюсь что этот гайд кому-то поможет :-)
Коллеги, у меня к вам вопрос - на цысках есть такая штука как PLAR - Private-line automatic ringdown (он же bat-phone). Выглядит так - абонент поднимает трубку с аппарата(цифра, аналог - без разницы) и тут же другой телефон(группа телефонов) начинает звонить. Как это называется на LG и как вкратце это настраивать ? (например невозможность звонить на первые телефоны, что поднимают трубку)
Поясняю. "Первые" телефоны, что "поднимают" трубку - это адапторы Commax-овского домофона к АТС. Работают так - при нажатии кнопки на вызывной панели домофона адаптор нагружает линию, станция видит что "телефон" поднял трубку и посылает вызов (через ПГМ 138). Так вот, что бы не выжечь это адапторы, должна быть исключена возможность звонить в их сторону, т.е. ни у кого не должно быть возможности позвонить в сторону адапторов.
Адапторы такие http://tec.org.ru/load/23-1-0-62
Интересно, а что мы с вами делали вчера на форуме вечером 23 февраля ? :-)
Дрон, спасибо большое. Про тенанты была мысль, но не успел проверить, так как до этого не настраивал, помню только про принцип из описания на ipLDK.
Промежуточный статус репорт:
1. DECT. Славные репитеры KIRK WRFP4 оказались single-cell, то есть для работы в системах с одной базой(номером базы). Соответственно, в случае с LG меня настиг односторонний handover(репитер-база, обратно не работает). В принципе, неожиданностью для меня это не было, народ с tek-tips с этим сталкивался. Выход - еще одна плата DECT и 4 базы. Итого 12 баз в системе.
2. Факсы по IP. T.38 с G.729 вполне заработал. На другой стороне цыска. Скорость была ограничена на 7200 bps.
3. Сказочные грабли с КПВ. В общем, при звонка в сторону MG КПВ нет. Причем слышен щелчок проключения канала.
Линии - VoIP, H.450, NET. Если PGM 165-5 стоит в любое значение, отличное от NO, то циску даже не удается заставить генерить КПВ локально (видимо из-за того, что вовремя открывается аудио-канал). Если PI не слать, то цыску можно заставить вырабатывать КПВ локально командой tone ringback alert-no-PI ( To generate automatic ringback for the caller when no Progress Indicator (PI) alert has been received over the H.323 network, use the tone ringback alert-no-PI command in dial-peer configuration mode.)
На ipLDK-100 такого странного явления не было. Сложилось впечатление, что для экономии полосы IP-канала корейцы заставляют КПВ вырабатывать вызывающую станцию, а не вызываемую.
2. зачем ограничили скорость?
3. Вообще дефолтное поведение для циски, если нет PI дудеть самой, у вас это гдето изменено, вот и приходится востанавливать.
2. вы же на t38?
3. так PI для того и нужен чтоб никаких локальных ринбэков не было
2. а вам на t38 должно быть всеравно на джиттер, в разумных пределах конечно.
3. а MG обещало что PI=КПВ?
2. джиттер-буфер со стороны цыски 60 мс. В моем случае всплески джиттера превышают 60 мс.
3. Смысл не в этом. В отладке четко видно что в зависимости от настройки цыски при PI=3 Origination address is non-ISDN или PI=1 Call is not end-to-end ISDN; further call progress information may be available in-band от MG rtp-поток исправно открывается, но КПВ в нем так и не появляется от MG.
Вот я и предположил, что разрабы MG считают, что КПВ должна вырабатывать локальная по отношению к вызывающему абоненту железяка, а не удаленная.
2. основания так считать?
3. а вот слать rtp c тишиной и заставлять его слушать, это совсем не правильно. Надеюсь мы говорим о звонке на телефон принадлежащий MG?
Русская версия Invision Power Board (http://nulled.ws)
© Invision Power Services (http://nulled.ws)