jSSC (Java Simple Serial Connector) — библиотека для работы с последовательными (COM) портами ПК. Библиотека создавалась как простая и надёжная замена уже имеющимся средствам. Своё официальное, публичное начало она берёт в 2010 году и распространяется под лицензией LGPL.
С помощью jSSC можно получать имена портов, читать и писать данные, получать ивенты о произошедших событиях ну и т.д. В отличии от javax.comm, с jSSC можно управлять линиями RTS и DTR. Библиотека разрабатывалась для работы в режиме 24/7 в многопоточных системах и на данный момент успешно используется в системах автоматизации, сбора и регистрации данных.
Библиотеку можно использовать на таких платформах, как:
- Windows x86 и x64;
- Linux x86, x64, armhf и armsf (т.е. Raspberry Pi, Orange Pi, Banana Pi, NanoPi и тп);
- Solaris x86 и x64;
- Mac OS X ppc, ppc64, x86 и x64.
jSSC можно разделить на несколько основных частей:
SerialNativeInterface
– класс, который предоставляет доступ ко всем «нативным» методам jSSC.SerialPort
– класс, с помощью которого мы уже будем непосредственно работать с нужным нам портом.SerialPortEventListener
– интерфейс, который необходимо реализовать, если мы хотим использовать ивенты.
jSSC предоставляет следующий ряд возможностей:
- Чтение и запись данных;
- Управление линиями RTS, DTR;
- Получение статуса линий CTS, DSR, RING, RLSD;
- Получение количества байт в буферах;
- Очистка буферов порта;
- Отправка сигнала Break;
- Управление потоком;
- Получение списка com-портов в системе;
Где скачать jSSC
Последнюю версию скачать можно тут, на этой странице можно найти и исходный код. На данный момент доступна версия 2.8.0: jSSC-2.8.0-Release.zip, в архиве вы найдёте файл jssc.jar, его и добавьте в свои проекты. Если вам удобнее работать в Maven, тогда можете добавить следующую зависимость:
<!-- https://mvnrepository.com/artifact/org.scream3r/jssc --> <dependency> <groupId>org.scream3r</groupId> <artifactId>jssc</artifactId> <version>2.8.0</version> </dependency>
Примеры программ с jSSC
Получение имён последовательных портов
Получить список последовательных портов очень просто с помощью метода getPortNames()
. Метод возвращает массив отсортированы строк.
import jssc.SerialPortList; public class SerialPortListExample { public static void main(String[] args) { String[] portNames = SerialPortList.getPortNames(); for (String portName : portNames) { System.out.println(portName); } } }
Проверяем код:
- создаём java файл и вставляем код:
nano SerialPortListExample.java
- компилируем файл:
javac -classpath .:classes:jssc.jar SerialPortListExample.java
- запускаем программу:
java -classpath .:classes:jssc.jar SerialPortListExample
Результат
Запись строки
Записывать данные в последовательный порт можно при помощи следующих методов:
writeByte
— Запись одного байта в порт;public boolean writeByte(byte singleByte)
writeBytes
— Запись массива байтов в порт;public boolean writeBytes(byte[] buffer)
writeInt
— Запись INT значение (в диапазоне от 0 до 255 (0x00 — 0xFF)) в порт;public boolean writeInt(int singleInt)
writeIntArray
— Запись массива int (в диапазоне от 0 до 255 (0x00 — 0xFF)) в порт;public boolean writeIntArray(int[] buffer)
writeString
— Запись строки в порт;public boolean writeString(String string) public boolean writeString(String string, String charsetName)
Ниже приведённый пример кода будет запускаться на Windows 10 x64 и будет передавать привет Orange Pi PC, который и будет принимать приветы.
import java.io.UnsupportedEncodingException; import jssc.SerialPort; import jssc.SerialPortException; public class SerialTxExample { public static void main(String[] args) { /* * Передаём в конструктор имя порта */ SerialPort serialPort = new SerialPort("COM13"); try { /* * Открываем порт */ serialPort.openPort(); /* * Выставляем параметры */ serialPort.setParams(SerialPort.BAUDRATE_9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); /* * Передаём привет */ serialPort.writeString("Привет", "UTF-8"); } catch (SerialPortException ex) { ex.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } }
Чтение данных с использованием интерфейса SerialPortEventListener
Чтение данных из последовательного порта можно при помощи следующих методов:
public byte[] readBytes() public byte[] readBytes(int byteCount) public byte[] readBytes(int byteCount, int timeout) public String readHexString() public String readHexString(int byteCount) public String readHexString(int byteCount, int timeout) public String readHexString(int byteCount, String separator) public String readHexString(int byteCount, String separator, int timeout) public String readHexString(String separator) public String[] readHexStringArray() public String[] readHexStringArray(int byteCount) public String[] readHexStringArray(int byteCount, int timeout) public int[] readIntArray() public int[] readIntArray(int byteCount) public int[] readIntArray(int byteCount, int timeout) public String readString() public String readString(int byteCount) public String readString(int byteCount, int timeout)
Ниже приведённый пример кода будет запускаться на Orange Pi PC и принимать приветы, отправленные через последовательный порт. Все сообщения будут выводиться в терминал.
import jssc.SerialPort; import jssc.SerialPortEvent; import jssc.SerialPortEventListener; import jssc.SerialPortException; public class SerialPorRxTxSerialPortEventListenerExample { public static void main(String[] args) { /* * Передаём в конструктор имя порта */ SerialPort serialPort = new SerialPort("/dev/ttyS1"); try { /* * Открываем порт */ serialPort.openPort(); /* * Выставляем параметры */ serialPort.setParams(SerialPort.BAUDRATE_9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); /* * Готовим маску, на основании неё мы будем получать сообщения о событиях, * которые произошли. Ну например, нам необходимо знать что пришли * какие-то данные, т.о. в маске должна присутствовать следующая величина: * MASK_RXCHAR. Если нам, например, ещё нужно знать об изменении состояния * линий CTS и DSR, то маска уже будет выглядеть так: * SerialPort.MASK_RXCHAR + SerialPort.MASK_CTS + SerialPort.MASK_DSR */ int mask = SerialPort.MASK_RXCHAR; /* * Выставляем подготовленную маску */ serialPort.setEventsMask(mask); /* * Добавляем собственно интерфейс через который мы и будем узнавать о * нужных нам событиях */ serialPort.addEventListener(new SerialPortReader(serialPort)); } catch (SerialPortException ex) { ex.printStackTrace(); } } static class SerialPortReader implements SerialPortEventListener { private SerialPort serialPort; public SerialPortReader(SerialPort serialPort) { this.serialPort = serialPort; } public void serialEvent(SerialPortEvent event) { /* * Объект типа SerialPortEvent несёт в себе информацию о том какое событие * произошло и значение. Так например если пришли данные то метод * event.getEventValue() вернёт нам количество байт во входном буфере. */ if (event.isRXCHAR()) { if (event.getEventValue() > 0) { try { String buffer = serialPort.readString(); System.out.println(buffer); } catch (SerialPortException ex) { ex.printStackTrace(); } } } else if (event.isCTS()) { /* * Если изменилось состояние линии CTS, то метод event.getEventValue() * вернёт 1 если линия включения и 0 если выключена. */ if (event.getEventValue() == 1) { System.out.println("CTS - ON"); } else { System.out.println("CTS - OFF"); } } else if (event.isDSR()) { if (event.getEventValue() == 1) { System.out.println("DSR - ON"); } else { System.out.println("DSR - OFF"); } } } } }
Проверяем код:
- создаём java файл и вставляем код:
nano SerialExample.java
- компилируем файл:
javac -classpath .:classes:jssc.jar SerialExample.java
- запускаем программу:
java -classpath .:classes:jssc.jar SerialExample
Результат
Материалы
java-simple-serial-connector
Releases · scream3r/java-simple-serial-connector · GitHub
Работаем с COM-портом из Java при помощи jSSC / Хабр
Maven Repository: org.scream3r » jssc
Выбор номер один — натяжные потолки в Петербурге|Скидки на натяжные потолки в СПб|Лучшие специалисты по натяжным потолкам в Петербурге|Разнообразие натяжных потолков в Петербурге|Как выбрать идеальный натяжной потолок в СПб|Натяжные потолки в Петербурге для вашего уюта|Интерьерные решения с натяжными потолками в Петербурге|Идеальные потолки в Петербурге только у нас|Долговечные и стойкие натяжные потолки в Санкт-Петербурге|Инновационные технологии для натяжных потолков в СПб|Эффективное монтаж натяжных потолков в Петербурге|Совершенство с натяжными потолками в Санкт-Петербурге|Модные тренды в мире натяжных потолков: СПб|Экономьте на натяжных потолках в Санкт-Петербурге|Натяжные потолки в СПб: выбор современных людей|Экспертный подход к натяжным потолкам в Петербурге|Стильные потолки в Петербурге: натяжные|Точное соответствие вашим потребностям: натяжные потолки в Петербурге|Персональные решения для вас: натяжные потолки в Петербурге|Бонусы использования натяжных потолков в Санкт-Петербурге|Инновационные материалы для натяжных потолков в Петербурге|Высококлассное обслуживание по установке натяжных потолков в Санкт-Петербурге|Современные тренды в создании потолков: натяжные потолки в Санкт-Петербурге|Компр
натяжные потолки питер [url=https://potolki-spb-1.ru/]https://potolki-spb-1.ru/[/url] .
Лучшее остекление балконов в СПб, поможем выбрать подходящий вариант.
Элитное остекление для балконов в Санкт-Петербурге, с установкой и долговечной эксплуатацией.
Индивидуальное остекление балконов в СПб, под заказ и с уникальным дизайном.
Быстрое остекление для балконов в Санкт-Петербурге, без скрытых платежей и срочно.
Экономичное остекление для балконов в Санкт-Петербурге, по лучшей цене и быстрой установкой.
остекление лоджии цена под ключ https://balkon-spb-1.ru/ .
Лучшие натяжные потолки в СПб|Выгодное предложение на натяжные потолки в Петербурге|Профессиональная установка натяжных потолков в СПб|Огромный ассортимент натяжных потолков в Санкт-Петербурге|Как выбрать идеальный натяжной потолок в СПб|Натяжные потолки в Петербурге для вашего уюта|Интерьерные решения с натяжными потолками в Петербурге|Натяжные потолки в СПб: лучший выбор для вашего дома|Только проверенные потолки в Петербурге у нас|Последние тренды для натяжных потолков в Петербурге|Быстрое и качественное установление натяжных потолков в Санкт-Петербурге|Оптимальное решение — натяжные потолки в Петербурге|Столица натяжных потолков: Петербург|Специальные предложения на натяжные потолки в Петербурге|Хит сезона — натяжные потолки в Санкт-Петербурге|Уникальные решения в области натяжных потолков в Санкт-Петербурге|Комфорт и эстетика с натяжными потолками в Санкт-Петербурге|Точное соответствие вашим потребностям: натяжные потолки в Петербурге|Индивидуальный подход к каждому клиенту: натяжные потолки в СПб|Плюсы натяжных потолков в Петербурге|Технологические новинки для натяжных потолков в Санкт-Петербурге|Премиальный сервис по установке натяжных потолков в СПб|Новинки в оформлении потолков: натяжные потолки в Петербурге|Идеальное сочетание цены и качества: натяжные потолки в СПб
натяжные потолки под ключ спб цены https://potolki-spb-1.ru/ .
[url=https://streamhub.shop/nakrutka-zriteley-twitch/]Накрутка зрителей Twitch[/url]
[url=https://streamhub.world/]Boost Twitch Kick Viewers[/url]
Explore the premier platform for accessing a variety of high-quality Western adult video services. We provide detailed reviews, current information, and exclusive access to the best sources for Western adult content. Our expert recommendations ensure you have a superior and secure viewing experience. Join us to discover the top services for diverse and premium Western adult videos online. 미국야동
Discover the premier platform for finding sites to watch high-quality Japanese adult videos with subtitles. We offer detailed reviews, up-to-date information, and exclusive access to the best sources for Japanese adult content. Our expert recommendations ensure you enjoy top-notch videos with clear subtitles for an enhanced viewing experience. Join us to explore the finest sites for diverse and high-quality Japanese adult videos online. 일본야동
Our platform helps you identify and avoid online scam gambling sites. We provide comprehensive reviews, user feedback, and verified ratings to ensure you gamble safely. Stay informed with our regularly updated blacklist of fraudulent websites. Trust us to guide you to secure and reputable gambling platforms. 먹튀사이트
Experience the thrill of hitting the jackpot with safe and verified online slot sites. Discover the best platforms where security and reliability come first. Our expert recommendations ensure you enjoy a secure and enjoyable gaming experience. Join us and find your path to a happy jackpot today. 잭팟
Great post [url=https://aga-solutions.com]AGA[/url]! I am actually getting [url=https://aga-solutions.com]AGA솔루션[/url]ready to across this information [url=https://aga-solutions.com]알본사[/url], is very helpful my friend [url=https://aga-solutions.com]카지노솔루션[/url]. Also great blog here [url=https://aga-solutions.com]슬롯솔루션[/url] with all of the valuable information you have [url=https://aga-solutions.com]슬롯사이트[/url]. Keep up the good work [url=https://aga-solutions.com]온라인슬롯[/url] you are doing here [url=https://aga-solutions.com]온라인카지노[/url]. [url=https://aga-solutions.com]슬롯머신[/url]
stehovani hodnoceni https://www.tmgcompany.com
порно милфы порно милфы .
Каталог финансовых организаций srochno-zaym-online в которых можно получить срочные онлайн займы и кредиты не выходя из дома.
http://slotdemo.auction/# Slot dengan tema film terkenal menarik banyak perhatian
перевозка пианино с грузчиками перевозка детской коляски
1win казино скачать bbcc.com.kg .
Kasino menawarkan pengalaman bermain yang seru: garuda888.top — garuda888 slot
Banyak pemain menikmati jackpot harian di slot http://bonaslot.site/# Slot dengan fitur interaktif semakin banyak tersedia
https://preman69.tech/# Permainan slot bisa dimainkan dengan berbagai taruhan
Banyak pemain menikmati jackpot harian di slot https://slotdemo.auction/# Mesin slot sering diperbarui dengan game baru
Beberapa kasino memiliki area khusus untuk slot: preman69 — preman69.tech
https://preman69.tech/# Pemain sering berbagi tips untuk menang
hdrezka мелодрамы с субтитрами на айфоне смотреть смотреть боевики онлайн онлайн
Каталог финансовых организаций srochno-zaym-online.ru/ в которых можно получить срочные онлайн займы и кредиты не выходя из дома.
Kasino selalu memperbarui mesin slotnya https://preman69.tech/# Mesin slot menawarkan berbagai tema menarik
https://preman69.tech/# Mesin slot sering diperbarui dengan game baru
Banyak pemain berusaha untuk mendapatkan jackpot: garuda888 — garuda888.top
Slot dengan grafis 3D sangat mengesankan: garuda888.top — garuda888.top
корейские дорамы онлайн трейлер новые новинки кино 2025 2025
Kasino selalu memperbarui mesin slotnya http://slotdemo.auction/# Banyak pemain berusaha untuk mendapatkan jackpot
Управляйте своим окружением с помощью программируемого электрокарниза, подходит для любого окна.
Превратите свой дом в оазис комфорта с программируемым электрокарнизом, который дарит вам полный контроль.
Освежите свою обстановку с помощью программируемого электрокарниза, обеспечит вам максимальный комфорт.
Превратите свою спальню в уютное убежище с программируемым электрокарнизом, дарит вам возможность наслаждаться каждой минутой вашего сна.
Управляйте светом и теплом в вашем доме с программируемым электрокарнизом, обеспечит вас уютом и спокойствием.
умный автоматический электрокарниз https://elektrokarniz190.ru/ .
электро карниз на окна электро карниз на окна .
http://garuda888.top/# Jackpot besar bisa mengubah hidup seseorang
Mesin slot menawarkan berbagai tema menarik http://slot88.company/# Kasino menyediakan layanan pelanggan yang baik
https://slot88.company/# Pemain harus menetapkan batas saat bermain
Kasino di Indonesia menyediakan hiburan yang beragam: garuda888.top — garuda888 slot
виагра москва виагра москва .
Slot dengan bonus putaran gratis sangat populer: slot 88 — slot 88
Jackpot progresif menarik banyak pemain http://garuda888.top/# Mesin slot baru selalu menarik minat
https://preman69.tech/# Banyak kasino memiliki promosi untuk slot
Kasino sering memberikan hadiah untuk pemain setia http://bonaslot.site/# Banyak kasino memiliki promosi untuk slot
Slot dengan fitur interaktif semakin banyak tersedia http://preman69.tech/# Banyak pemain mencari mesin dengan RTP tinggi
Kasino menyediakan layanan pelanggan yang baik: garuda888.top — garuda888
Slot menawarkan kesenangan yang mudah diakses: garuda888 slot — garuda888 slot
Beberapa kasino memiliki area khusus untuk slot http://bonaslot.site/# Banyak pemain menikmati bermain slot secara online
лучшие лучшие комедии 2025 фильмы бесплатный доступ к кино HD 1080p
https://bonaslot.site/# Banyak kasino memiliki program loyalitas untuk pemain
Mesin slot dapat dimainkan dalam berbagai bahasa http://preman69.tech/# Slot dengan grafis 3D sangat mengesankan
Mesin slot sering diperbarui dengan game baru https://bonaslot.site/# Slot menawarkan kesenangan yang mudah diakses
Mesin slot dapat dimainkan dalam berbagai bahasa http://slot88.company/# Pemain harus memahami aturan masing-masing mesin
Mesin slot sering diperbarui dengan game baru http://preman69.tech/# Slot dengan fitur interaktif semakin banyak tersedia
demo slot pg slotdemo Banyak pemain menikmati jackpot harian di slot
Pemain sering berbagi tips untuk menang: BonaSlot — bonaslot.site
Сауна очищает организм https://sauna-broadway.ru выводя токсины через пот, укрепляет иммунитет благодаря перепадам температуры, снимает стресс, расслабляя мышцы и улучшая кровообращение. Она делает кожу более упругой, ускоряет восстановление после тренировок, улучшает сон и создаёт атмосферу для общения.
Slot klasik tetap menjadi favorit banyak orang https://slotdemo.auction/# Kasino sering mengadakan turnamen slot menarik
Mesin slot menawarkan pengalaman bermain yang cepat: slotdemo — slot demo
Korean cosmetics http://www.gtcm.info/home.php?mod=space&uid=969825 perfect skin without effort! Innovative formulas, Asian traditions and visible results. Try the best skin care products right now!
Permainan slot bisa dimainkan dengan berbagai taruhan: preman69 — preman69.tech
doxycycline for sale online uk: doxy 100 — order doxycycline uk
автоматические карнизы автоматические карнизы .
карниз с приводом карниз с приводом .
can i purchase generic clomid pill: ClmHealthPharm — get cheap clomid for sale
where can i buy generic clomid without dr prescription: cheap clomid without rx — cost of cheap clomid no prescription
карниз для штор электрический карниз для штор электрический .
where can i buy amoxicillin without prec: amoxicillin for sale — amoxicillin generic
http://zithropharm.com/# can you buy zithromax online
doxycycline 100mg best price DoxHealthPharm cheap doxycycline online
can you get generic clomid prices: cost of cheap clomid without a prescription — can you get cheap clomid price
cheap amoxicillin 500mg: over the counter amoxicillin canada — amoxicillin 875 mg tablet
http://doxhealthpharm.com/# doxycycline 200 mg
amoxicillin 500 mg where to buy: cost of amoxicillin 30 capsules — medicine amoxicillin 500mg
can i buy clomid without prescription: ClmHealthPharm — cheap clomid now
amoxicillin 500 mg tablet price: Amo Health Pharm — purchase amoxicillin online without prescription
doxycycline 100mg tablet brand name Dox Health Pharm order doxycycline 100mg without prescription
where to get zithromax: zithromax cost australia — where can i buy zithromax medicine
buy cheap generic zithromax: zithromax for sale cheap — zithromax 250 mg australia
http://doxhealthpharm.com/# buying doxycycline online
where can you buy zithromax: ZithroPharm — zithromax 500 price
карниз для штор с электроприводом карниз для штор с электроприводом .
zithromax 1000 mg online: ZithroPharm — buy zithromax without prescription online
purchase amoxicillin 500 mg: AmoHealthPharm — can i buy amoxicillin over the counter
doxycycline 100mg india: Dox Health Pharm — doxycycline costs uk
smm promotion services https://smm-panel-cheap.com
buy zithromax online fast shipping: can you buy zithromax online — zithromax 250 mg
http://clmhealthpharm.com/# where buy clomid online
amoxicillin 500 mg without prescription: AmoHealthPharm — how to get amoxicillin over the counter
http://clmhealthpharm.com/# cost of cheap clomid pills
can i purchase doxycycline over the counter: Dox Health Pharm — doxycycline over the counter south africa
where can i get clomid prices: cost cheap clomid without prescription — get generic clomid no prescription
where to get generic clomid without dr prescription: how to buy cheap clomid no prescription — cost of generic clomid without insurance
электрические шторы на окна электрические шторы на окна .
автоматические шторы автоматические шторы .
http://amohealthpharm.com/# amoxil pharmacy
doxycycline 100 mg tablet cost: doxycycline over the counter uk — doxycycline cheap uk
Идеи вашего дома. Информация о дизайне и архитектуре.
Syndyk – это место, где каждый день вы можете увидеть много различных дизайнерских решений, деталей для вашей квартиры, проектов домов, лучшая сантехника.
Если вы дизайнер или архитектор, то мы с радостью разместим ваш проект на Сундуке. На сайте можно и даже нужно обмениваться мнениями и информацией о дизайне и архитектуре.
Сайт: Дизайн и архитектура
http://amohealthpharm.com/# amoxil pharmacy
doxycycline cost: Dox Health Pharm — doxycycline 200 mg capsules
amoxicillin 500mg capsules uk: amoxicillin capsule 500mg price — cheap amoxicillin 500mg
zithromax price south africa ZithroPharm can i buy zithromax over the counter
римские шторы купить москва римские шторы купить москва .
somfy google http://www.prokarniz25.ru/ .
amoxicillin 500 mg online: amoxicillin without prescription — amoxicillin 500mg prescription
https://zithropharm.shop/# buy zithromax online
generic zithromax azithromycin: ZithroPharm — zithromax cost australia
zithromax 500 mg: zithromax 600 mg tablets — generic zithromax online paypal
buy zithromax without presc: ZithroPharm — buy generic zithromax online
zithromax capsules australia: zithromax 500mg — zithromax 1000 mg online
zithromax 1000 mg online: Zithro Pharm — buy zithromax 1000mg online
doxycycline price doxycycline 60 mg п»їdoxycycline 100mg tablets for sale
http://zithropharm.com/# where to buy zithromax in canada
amoxicillin 500: AmoHealthPharm — amoxicillin 500mg price
how to get amoxicillin: AmoHealthPharm — amoxicillin price canada
buy amoxicillin 500mg uk: buy cheap amoxicillin — amoxicillin price without insurance
amoxicillin 800 mg price: AmoHealthPharm — buy amoxicillin canada
pharmacie en ligne france livraison internationale Tadalafil sans ordonnance en ligne pharmacie en ligne avec ordonnance
аттестат купить в спб
pharmacie en ligne livraison europe: kamagra en ligne — pharmacie en ligne france pas cher
pharmacie en ligne achat kamagra pharmacie en ligne france livraison belgique
Pharmacie en ligne livraison Europe http://kamagrameilleurprix.com/# pharmacie en ligne sans ordonnance
http://tadalafilmeilleurprix.com/# pharmacie en ligne france pas cher
Pharmacie Internationale en ligne
pharmacie en ligne france fiable: cialis sans ordonnance — vente de mГ©dicament en ligne
trouver un mГ©dicament en pharmacie: cialis prix — pharmacie en ligne livraison europe
pharmacie en ligne fiable: kamagra pas cher — pharmacie en ligne france livraison internationale
купить топ шмот path of exile 2 купить божественные сферы path of exile 2
pharmacie en ligne avec ordonnance http://viagrameilleurprix.com/# Viagra pas cher livraison rapide france
pharmacie en ligne livraison europe https://pharmaciemeilleurprix.shop/# pharmacie en ligne avec ordonnance
https://tadalafilmeilleurprix.shop/# Pharmacie sans ordonnance
п»їpharmacie en ligne france
pharmacie en ligne france fiable: Tadalafil sans ordonnance en ligne — pharmacie en ligne france livraison internationale
pharmacie en ligne france livraison belgique http://pharmaciemeilleurprix.com/# pharmacie en ligne
http://pharmaciemeilleurprix.com/# pharmacie en ligne pas cher
pharmacie en ligne avec ordonnance
http://kamagrameilleurprix.com/# pharmacie en ligne livraison europe
pharmacie en ligne france livraison belgique
pharmacie en ligne livraison europe https://pharmaciemeilleurprix.shop/# Pharmacie Internationale en ligne
акции мостбет http://mostbet2.com.kg/ .
https://tadalafilmeilleurprix.shop/# acheter mГ©dicament en ligne sans ordonnance
acheter mГ©dicament en ligne sans ordonnance
для офиса.
Умное устройство для управления жалюзи.
для офиса.
Плюсы использования привода для жалюзи.
Современные разработки для управления жалюзями.
Как управлять жалюзями с помощью смартфона с использованием привода.
Как установить привод для жалюзи своими руками.
Экономьте время и энергию с автоматизированным приводом для жалюзи.
Забавные истории об использовании приводов для жалюзей.
Секрет уюта и удобства с автоматизированными жалюзями.
жалюзи с приводом на окна жалюзи с приводом на окна .
pharmacie en ligne pas cher kamagra gel acheter mГ©dicament en ligne sans ordonnance
Pharmacie sans ordonnance: kamagra livraison 24h — pharmacie en ligne avec ordonnance
SildГ©nafil Teva 100 mg acheter: Viagra sans ordonnance 24h — п»їViagra sans ordonnance 24h
pharmacie en ligne avec ordonnance https://pharmaciemeilleurprix.com/# pharmacie en ligne france fiable
sp5der pink hoodie http://www.spiderhoodie-us.com/spider-hoodies/ .
pharmacie en ligne sans ordonnance https://viagrameilleurprix.com/# Viagra gГ©nГ©rique sans ordonnance en pharmacie
http://pharmaciemeilleurprix.com/# Pharmacie sans ordonnance
pharmacie en ligne france pas cher
Простое решение для управления жалюзями.
Современный способ контроля жалюзи.
Как выбрать правильный привод для жалюзи.
Зачем нужен привод для автоматизации жалюзей.
Современные разработки для управления жалюзями.
Простой способ контролировать жалюзи с телефона с использованием привода.
Секреты успешной установки привода для автоматизации жалюзей.
Экономьте время и энергию с автоматизированным приводом для жалюзи.
Интересные факты о приводах для жалюзи.
Секрет уюта и удобства с автоматизированными жалюзями.
жалюзи для приточной вентиляции с приводом жалюзи для приточной вентиляции с приводом .
acheter mГ©dicament en ligne sans ordonnance http://kamagrameilleurprix.com/# pharmacie en ligne france livraison belgique
http://tadalafilmeilleurprix.com/# pharmacie en ligne livraison europe
п»їpharmacie en ligne france
pharmacie en ligne france livraison belgique http://viagrameilleurprix.com/# Viagra vente libre pays
pharmacie en ligne sans ordonnance pharmacie en ligne sans ordonnance Achat mГ©dicament en ligne fiable
Простое решение для управления жалюзями.
Умное устройство для управления жалюзи.
для коммерческого помещения.
Зачем нужен привод для автоматизации жалюзей.
Инновационные технологии в области приводов для жалюзи.
Как управлять жалюзями с помощью смартфона с использованием привода.
Секреты успешной установки привода для автоматизации жалюзей.
Почему стоит выбрать привод для автоматизации жалюзей.
Необычное применение приводов для управления жалюзями.
Почему привод для жалюзи делает жизнь легче и удобнее.
привод на жалюзи привод на жалюзи .
https://kamagrameilleurprix.com/# pharmacie en ligne france livraison internationale
Pharmacie en ligne livraison Europe
pharmacie en ligne livraison europe: Cialis sans ordonnance 24h — acheter mГ©dicament en ligne sans ordonnance
Sildenafil teva 100 mg sans ordonnance: Viagra sans ordonnance 24h — Viagra Pfizer sans ordonnance
https://kamagrameilleurprix.shop/# trouver un mГ©dicament en pharmacie
pharmacie en ligne fiable
pharmacie en ligne france livraison internationale https://kamagrameilleurprix.com/# Pharmacie Internationale en ligne
Как заменить турбину на машине и не переплатить втрое больше. Типичная схема развода на замену турбины. Будьте осторожны. Подробности тут Как заменить турбину на машине и не переплатить втрое больше. Типичная схема развода на замену турбины. Будьте осторожны. Подробности тут .
проведение специальной оценки условий труда соут проведение специальной оценки условий труда соут .
Считалки для детей Считалки для детей .
https://viagrameilleurprix.com/# Viagra vente libre pays
Pharmacie en ligne livraison Europe
pharmacie en ligne pas cher: pharmacie en ligne france — Pharmacie en ligne livraison Europe
Viagra Pfizer sans ordonnance: SildГ©nafil 100 mg sans ordonnance — Viagra pas cher inde
pharmacie en ligne france pas cher: pharmacie en ligne pas cher — Pharmacie sans ordonnance
Pharmacie en ligne livraison Europe https://viagrameilleurprix.com/# Viagra gГ©nГ©rique sans ordonnance en pharmacie
pharmacie en ligne livraison europe achat kamagra Pharmacie en ligne livraison Europe
https://tadalafilmeilleurprix.com/# pharmacie en ligne
trouver un mГ©dicament en pharmacie
trouver un mГ©dicament en pharmacie: pharmacie en ligne france — pharmacie en ligne france fiable
https://pharmaciemeilleurprix.shop/# Achat mГ©dicament en ligne fiable
pharmacie en ligne sans ordonnance
Pharmacie en ligne livraison Europe: Cialis sans ordonnance 24h — pharmacie en ligne sans ordonnance
Achat mГ©dicament en ligne fiable http://tadalafilmeilleurprix.com/# pharmacie en ligne france pas cher
п»їpharmacie en ligne france: acheter kamagra site fiable — acheter mГ©dicament en ligne sans ordonnance
https://viagrameilleurprix.com/# Viagra gГ©nГ©rique sans ordonnance en pharmacie
pharmacie en ligne
автоматические рулонные шторы автоматические рулонные шторы .
охрана труда пройти обучение требованиям в Москве https://ohrana-truda-distancionno.ru/ .
мост бет официальный сайт регистрация http://www.mostbet3.com.kg .
мост бет мост бет .
pharmacie en ligne pas cher https://pharmaciemeilleurprix.shop/# pharmacie en ligne france livraison internationale
https://pharmaciemeilleurprix.shop/# trouver un mГ©dicament en pharmacie
pharmacie en ligne sans ordonnance
pharmacie en ligne avec ordonnance: pharmacie en ligne sans ordonnance — trouver un mГ©dicament en pharmacie
услуги по оценке условий труда услуги по оценке условий труда .
Получите максимум удовольствия от вашего дома с программируемым электрокарнизом, который легко устанавливается.
Создайте идеальное освещение в вашем доме с программируемым электрокарнизом, помогает вам расслабиться и отдохнуть.
Сделайте вашу жизнь проще с программируемым электрокарнизом, который позволит вам сохранить энергию.
Создайте идеальные условия для сна с помощью программируемого электрокарниза, дарит вам возможность наслаждаться каждой минутой вашего сна.
Создайте идеальные условия для работы и отдыха с программируемым электрокарнизом, обеспечит вас уютом и спокойствием.
умный электрокарниз xiaomi aqara умный электрокарниз xiaomi aqara .
Pharmacie Internationale en ligne: kamagra livraison 24h — trouver un mГ©dicament en pharmacie
https://tadalafilmeilleurprix.shop/# pharmacie en ligne pas cher
pharmacie en ligne france livraison internationale
pharmacie en ligne pas cher: pharmacie en ligne — acheter mГ©dicament en ligne sans ordonnance
pharmacie en ligne livraison europe: Pharmacies en ligne certifiees — pharmacie en ligne livraison europe
игровой клуб эльдорадо online casino на реальные деньги
игровые автоматы рейтинг лучших casino
pharmacies en ligne certifiГ©es http://tadalafilmeilleurprix.com/# pharmacie en ligne france livraison belgique
https://viagrameilleurprix.shop/# Viagra pas cher livraison rapide france
vente de mГ©dicament en ligne
Pharmacie sans ordonnance: pharmacie en ligne avec ordonnance — Pharmacie sans ordonnance
Viagra 100mg prix Viagra pharmacie Viagra sans ordonnance 24h Amazon
http://pharmaciemeilleurprix.com/# Pharmacie Internationale en ligne
pharmacies en ligne certifiГ©es
Achat mГ©dicament en ligne fiable: Tadalafil sans ordonnance en ligne — Pharmacie en ligne livraison Europe
Viagra pas cher livraison rapide france Viagra sans ordonnance 24h SildГ©nafil 100mg pharmacie en ligne
pharmacie en ligne france livraison belgique: pharmacie en ligne pas cher — pharmacie en ligne avec ordonnance
киного фильмы про оборотней киного сериалы по популярности
http://viagrameilleurprix.com/# Acheter Sildenafil 100mg sans ordonnance
pharmacie en ligne livraison europe
pharmacie en ligne avec ordonnance https://viagrameilleurprix.shop/# Viagra en france livraison rapide
pharmacie en ligne france fiable: cialis generique — Pharmacie Internationale en ligne
pharmacie en ligne avec ordonnance https://pharmaciemeilleurprix.shop/# trouver un mГ©dicament en pharmacie
накрутка подписчиков ТГ канале без отписок активные накрутка подписчиков ТГ канале без отписок активные .
pharmacie en ligne sans ordonnance: acheter mГ©dicament en ligne sans ordonnance — pharmacie en ligne france pas cher
Pharmacie Internationale en ligne https://pharmaciemeilleurprix.shop/# pharmacie en ligne pas cher
http://tadalafilmeilleurprix.com/# pharmacie en ligne livraison europe
pharmacie en ligne france livraison belgique
pharmacie en ligne avec ordonnance cialis prix trouver un mГ©dicament en pharmacie
pharmacie en ligne livraison europe https://viagrameilleurprix.shop/# Viagra gГ©nГ©rique sans ordonnance en pharmacie
Prix du Viagra 100mg en France: acheter du viagra — Le gГ©nГ©rique de Viagra
https://pharmaciemeilleurprix.shop/# pharmacie en ligne france pas cher
pharmacie en ligne
pharmacie en ligne pas cher: Tadalafil sans ordonnance en ligne — pharmacie en ligne avec ordonnance
trouver un mГ©dicament en pharmacie http://viagrameilleurprix.com/# Viagra pas cher livraison rapide france
https://pharmaciemeilleurprix.com/# pharmacie en ligne livraison europe
pharmacie en ligne avec ordonnance
Pharmacie en ligne livraison Europe: cialis generique — pharmacie en ligne pas cher
1win букмекер 1win букмекер .
п»їpharmacie en ligne france cialis sans ordonnance Pharmacie en ligne livraison Europe
https://tadalafilmeilleurprix.shop/# pharmacie en ligne france pas cher
pharmacie en ligne france livraison belgique
Viagra homme prix en pharmacie sans ordonnance Acheter Viagra Cialis sans ordonnance Viagra gГ©nГ©rique pas cher livraison rapide
п»їpharmacie en ligne france https://tadalafilmeilleurprix.com/# pharmacie en ligne
Оптимизируйте свою жизнь с электрокарнизом с таймером, экономьте энергию и время.
Создайте атмосферу уюта и стиля с помощью электрокарниза и таймера, который подчеркнет ваш вкус и индивидуальность.
Освободите руки и ум с электрокарнизом и таймером, для вашего удобства и удовольствия.
Умное устройство для вашего дома — электрокарниз с таймером, позволит вам наслаждаться своим временем и пространством.
Дизайнерское решение для современного дома — электрокарниз с таймером, позволит вам экономить время и силы.
умный дом шторы на пульте https://prokarniz50.ru/ .
http://pharmaciemeilleurprix.com/# pharmacie en ligne fiable
vente de mГ©dicament en ligne
pharmacie en ligne france pas cher: acheter mГ©dicament en ligne sans ordonnance — pharmacie en ligne livraison europe
pharmacie en ligne pas cher pharmacie en ligne Achat mГ©dicament en ligne fiable
https://tadalafilmeilleurprix.shop/# п»їpharmacie en ligne france
trouver un mГ©dicament en pharmacie
Оптимизируйте свою жизнь с электрокарнизом с таймером, экономьте энергию и время.
Дизайнерское решение для вашего дома — электрокарниз с таймером, сделает вашу жизнь проще и приятнее.
Эффективное управление светом и приватностью с электрокарнизом и таймером, создайте идеальную атмосферу в вашем доме.
Оптимальное решение для автоматизации штор — электрокарниз с таймером, позволит вам наслаждаться своим временем и пространством.
Инновационные технологии в управлении шторами — электрокарниз с таймером, позволит вам экономить время и силы.
электропривод для штор умный дом https://prokarniz50.ru/ .
pharmacie en ligne france fiable: kamagra gel — pharmacie en ligne france pas cher
1win скачать последнюю версию https://www.1win2.com.kg .
скачать игру авиатор на деньги http://www.1win8.com.kg .
1win lucky jet 1win lucky jet .
pharmacie en ligne: pharmacie en ligne france — pharmacies en ligne certifiГ©es
vente de mГ©dicament en ligne https://kamagrameilleurprix.shop/# pharmacie en ligne france pas cher
http://pharmaciemeilleurprix.com/# trouver un mГ©dicament en pharmacie
trouver un mГ©dicament en pharmacie
pharmacie en ligne: kamagra en ligne — vente de mГ©dicament en ligne