Написать приложение под ОС Андроид и под iOS для обращения к СИМ-карте
Задача: Написать софт (управляющую оболочку) под ОС Андроид и под iOS, которая бы могла напрямую (т.е. без внешнего сервера) обращаться к СИМ-карте со статическим IP-адресом (GSM-модуль типа SIM800C-32) и обеспечивать передачу на удаленный GSM-модуль определенных команд управления, обратно - принимать телеметрические данные.
Сроки: максимально быстро (задача "на вчера").
1. Режим обмена с модулем SIM800C_32:
- со стороны смартфона: GSM-GPRS <=> GSM-модуль;
- наша часть: GSM-модуль <=> контроллер STM32;
2. На экране:
- IP-адрес модуля
- поле для ввода команд
<!--[if !supportLineBreakNewLine]--> - текстовое поле (типа консоль), где отображаются отправленные команды и полученный ответ от модуля (возможны некоторые изменения)
3. На нашей стороне с модулем SIM800C_32 взаимодействует наш контроллер (STM32), Ваша часть – с нашим контроллером через модуль SIM800C_32 по каналу GSM/GPRS.
4. Протокол обмена и система команд обсуждается и утверждается в рабочем порядке.
5.По завершению работ необходимо (в т.ч.) предоставить в электронном виде все исходные тексты программ (т.е. под Андроид и под iOS) с комментариями.
6. В процессе демонстрации работоспособности софта Заказчик имеет право запросить некоторые правки функционала софта.
7. Фото желаемого вида страницы смартфона - прилагаем.
Вводные данные: Со слов программиста, который пишет только под Андроид:
Услуга предоставления сим-карты со статическим IP-адресом: эта услуга предоставляется только для корпоративных клиентов (Киевстар) и вроде как для всех контрактников (МТС). Стоило раньше около 40 грн/мес. При этом устройство с такой сим-картой (GMS-модуль или смартфон) при подключении к интернету получает белый статический IP-адрес (каждый раз одинаковый), на который другое устройство (с обычной сим-картой) может посылать пакеты напрямую (без сервера). Таким образом, хотя-бы одна из сторон должна иметь такую карту, тогда вторая сторона всегда должна быть инициатором связи. Впрочем, первая сторона может также косвенно быть инициатором, заставив вторую сторону начать связь (например, позвонив второй стороне, а та автоматически начинает связь).
Достоинства: не надо внешнего сервера
Недостатки: абонплата за статический IP, необходимость иметь корпоративную симку.
Для любых уточнений - прошу задавать вопросы.
Общение только здесь с нашим инженером-электронщиком, ответственным за разработку данного проекта.
Корректировка по срокам. "Горящие" сроки отпадают, т.к. у нашего инженера прототип должен быть готов числам к 20 сентября. Потом у исполнителя будет еще макс 10 дней в резерве для возможных отладок. Максимальный срок выполнения проекта - первые числа октября. Надеюсь это поможет исполнителям лучше спланировать время и подготовить качественный продукт.
Алгоритм коротко: в мобильном приложении указываем (и запоминаем) заранее известный IP-адрес "белой" сим-карты, к-я находится в GSM-модуле управления генератором. Затем приложение связывается с этим модулем по GPRS и при установлении связи посылает на генератор кломанду, к-ю выбрал пользователь (ВКЛЮЧИТЬ, ВЫКЛЮЧИТЬ, ПОЛУЧИТЬ СТАТИСТИКУ,...). Получив команду модуль генератора (+ мой контроллер) отрабатывает ее и сообщает назад в приложение текущий статус генератора.
Дизайн: приложенные скрины - это только для ориентира! Функции должны быть реализованы согласно ТЗ, а не согласно эскизам приложения.
Прошу прощения за задержки, но работа в большой компании с техническим ТЗ получилась более растянутая во времени.
Во вложении отправляю собранное ТЗ из первоначальных данных и того, что было использовано в разделе "Обсуждение" к ТЗ на фрилансханте.
Прошу Вас еще раз оценить готовность, сроки и цену, т.к. изменилась концепция в сторону все-таки использования веб-сервера без необходимости сим-карты со статическим IP-адресом.
Если вдруг работа сильно усложняется, хочу у Вас спросить, можете ли Вы написать только приложение под iOS, если наш сотрудник сделает веб-сервер и приложение под Андроид? Если да, какая стоимость и сроки будут в этом случае?
Applications 6
-
271 Готов взяться за работу, тех.нюансы уже обсуждены. Технология - Xamarin.Forms/Native
-
184 Добрый день, смогу написать приложение на Swift+UiKit.
Помогу выложить приложение в AppStore или в программу бета тестирования TestFlight.
Есть опыт работы с железом Arduino, STM32, AVR, ESP8266
-
Добрый день!
Хотел бы уточнить по какому протоколу будет соединение с удаленным устройством (имеется ввиду что будет поверх TCP - HTTP/HTTPS ? Socket ? webSocket ?) -
по большому счету - нам все-равно. Общее положение: что дешевле, быстрее (для реализации), надежнее, и - действительно по всей планете
-
кроме того - мы не являемся специалистами в данном вопросе
-
Тогда правильно поняли суть задачи ?Есть некое устройство в котором используется для связи модуль SIM800 и нужно написать программу под Androig/IOS для "общения" с этим устройством через мобильный интернет
-
именно так - все верно. Уточняю - модуль: SIM800C-32
-
По поводу приложения для работы с модулем SIM800C-32
Есть два варианта работы модуля - в режиме http-клиента и в режиме http-сервера. Вы предлагаете использовать его в режиме сервера, поэтому вам необходим статический адрес и не нужен промежуточный сервер (назовем его сервер приложения). Тут видим только одно преимущество - не нужен сервер приложения. Но есть другие проблемы, как например получение статического адреса. А это дополнительная услуга за дополнительные деньги и только для контрактных абонентов.
Предлагаем использовать второй вариант - когда модуль работает в режиме клиента. Да потребуется сервер приложения, но там будет стоять простейший сервер на Nodejs или Golang или PHP и модуль будет коннектиться к нему и через него будет идти обмен данными. Преимущество в том, что вы не привязаны к оператору симки или пакету услуг. Вы можете управлять любым количеством модулей. В случае пропадания связи между приложением и сервером данные сохраняются в буфере на сервере. Т/е ваши девайсы могут работать и отправлять данные круглосуточно, и вы всегда может получить к ним доступ из приложения.
В принципе все равно какой способ соединения будет
-
руководство настаивает на первом варианте, решено начать с него, там посмотрим
-
Нам нужно знать в каком режиме будет "общение" с модулем . Возможно два варианта командный - посылка AT-команд и прием ответа по сути как консоль. И второй - Прозрачный в нем эмулируется режим работы последовательного порта (UART).
Судя по описанию задания предполагается именно командный режим, возможно в режиме мультисокета (может поддерживать несколько входящих соединений одновременно)
<!--[if !supportLineBreakNewLine]-->Предлагаю тогда как уточнение ТЗ:
Приложение состоит из одного экрана , где последовательно сверху вниз идут поля:
1 IP-адрес модуля
2 поле для ввода команд
3 текстовое поле (типа консоль), где отображаются отправленные команды и полученный ответ от модуляЕсли да то в понедельник будет готово
Прототип для тестирования
Аналогичное делали для ESP-01, это модуль для WiFi сетей и BT модулей типаа HС-05.
Если можете предоставить доступ к рабочему модулю, который в сети для тестирования -то ок. Если нет – то постараемся купить такой если есть или заказать на arduino.ua
Просто тогда будет немного дольше, модуль приедет в суботу, если заказать сегодня или завтра
Также хочу уточнить нужно размещение в плеймаркет и аппстор? или это для личного использования.
Можем сделать PWA если вас устроит
-
я постараюсь в течении завтрашнего дня сформулировать наши пожелания и требования предельно подробно.
Если можно - дайте хоть приблизительную ориентацию по ценам - надо что-то доложить руководству
-
Стоимость от 800 $
-
Добрый день!
Прошу прощения был небольшой отпуск.
Правильно ли я понимаю вам нужно получить по итогу приложение то которое указано на эскизах фото?
Просто то что было в ТЗ отличается от скринов.
-
да, правильно. Сейчас вышлю еще текст
-
алгоритм коротко: в мобильном приложении указываем (и запоминаем) заранее известный IP-адрес "белой" сим-карты, к-я находится в GSM-модуле управления генератором. Затем приложение связывается с этим модулем по GPRS и при установлении связи посылает на генератор кломанду, к-ю выбрал пользователь (ВКЛЮЧИТЬ, ВЫКЛЮЧИТЬ, ПОЛУЧИТЬ СТАТИСТИКУ,...). Получив команду модуль генератора (+ мой контроллер) отрабатывает ее и сообщает назад в приложение текущий статус генератора.
-
Доброго дня. Наскільки критичним для вас є таймлайн? Наразі у нас немає вільних людей і якщо часові рамки є критичними як ви написали і 20 вересня хочете щось отримати, то ми тоді не можемо брати тут участь.
Орієнтовна вартість реалізації такого функціоналу $3000+. Водночас, з вами потрібно обговорити буде обговорити ряд деталей, щоб бути більш точними.
Підкажіть будь ласка чи вам буде актуально?
-
Алексей, добрый день!
Мы с коллегами обсуждаем ваш проект. Мы не можем связаться за проект и оценить стоимость пока не выясним все технические возможности.
Есть ряд вопросов:
1. Как вы видите реализацию уведомлений пользователя об ошибках или аварийных ситуациях?
Например - приложение не запущено на телефоне клиента, а в это время заглох двигатель или перегрелся или выбило автомат защиты , кончилось топливо?
2. Как будет реализовано управление несколькими генераторами одновременно из одного приложения? и будет ли вообще?
3. Опишите как вы видите реализацию интерфейса , конкретно интересует как должны раскрываться спойлеры (или закладки) "Таймеры запуска", "Заряд батареи", "Дистанционное управление"?Мы предполагаем что эти спойлеры открываются касанием (нажатием),а остальные , неактивные сворачиваются до заголовка, таким образом активный будет раскрываться примерно на половину или две трети экрана.4. что будет в разделах "Сервис" и "Настройка" (иконки в нижнем тулбаре)? -
Мы с коллегами обсуждаем ваш проект. Мы не можем связаться(т.е. взяться) за проект и оценить стоимость пока не выясним все технические возможности.
Есть ряд вопросов:
ВОПРОС 1. Как вы видите реализацию уведомлений пользователя об ошибках или аварийных ситуациях?
Например - приложение не запущено на телефоне клиента, а в это время заглох двигатель или перегрелся или выбило автомат защиты , кончилось топливо?
ОТВЕТ:
======
При возникновении вышеописанных и/или других неисправностей бортовой контроллер генератора фиксирует кодированный тип неисправности в
своей памяти и автоматически ставит признак отсутствия прочтения пользователем. Все подобные уведомления ставятся в очередь на отправку.
При отправлении очередного уведомления телефон пользователя подтверждает получение и бортовой контроллер снимает признак отсутствия прочтения.
Таким образом, в случае длительного отсутствия пользователя на связи в памяти бортового контроллера будет накапливаться очередь
неотправленных уведомлений. При вхождении в связь пользователь хронологически последовательно получит их все(или последние - опция).
ВОПРОС 2. Как будет реализовано управление несколькими генераторами одновременно из одного приложения? и будет ли вообще?
ОТВЕТ:
======
В конкретном приложении конкретного пользователя будет предварительно и принудительно (вручную) введен список IP-адресов всех этому пользователю
доступных к управлению генераторов и словесный идентификатор каждого генератора (например: ДАЧА, СТРОЙУЧАСТОК, ...).
В меню выбора пользователь перебором идентификаторов выбирает нужный и получает доступ к управлению выбранным.
Таким образом,- с одного приложения пользователь может получить доступ к управлению парой тысяч генераторов.
ВОПРОС 3. Опишите как вы видите реализацию интерфейса , конкретно интересует как должны раскрываться спойлеры (или закладки)
"Таймеры запуска", "Заряд батареи", "Дистанционное управление"?
Мы предполагаем что эти спойлеры открываются касанием (нажатием),
а остальные , неактивные сворачиваются до заголовка, таким образом активный будет раскрываться примерно на половину или две трети экрана.
МНЕНИЕ РАЗРАБОТЧИКА НИЖНЕГО УРОВНЯ: вышеуказанное предложение Исполнителя можно принять за основу
===================================
ВОПРОС 4. что будет в разделах "Сервис" и "Настройка" (иконки в нижнем тулбаре)?
ОТВЕТ:
======
"Сервис": пункты меню, совершенно и полностью СКРЫТЫЕ от пользователя
Т.е. раздел "Сервис" предназначен ТОЛЬКО для использования специалистами фирмы-изготовителя.
"Настройка": пункты меня второго (нижнего) уровня глубины залегания, доступного пользователем.
Конкретный их перечень и функционал будет описан позже. -
Алексей, добрый день!
Ориентировочная стоимость – 1400 $
Сроки – 1 месяц. Предварительно делаем прототип, где будет проработан основной функционал – 14 дней.
Если вы готовы, мы сделаем ставку.
ВОПРОС 4. что будет в разделах "Сервис" и "Настройка" (иконки в нижнем тулбаре)?
ОТВЕТ:
======
"Сервис": пункты меню, совершенно и полностью СКРЫТЫЕ от пользователя
Т.е. раздел "Сервис" предназначен ТОЛЬКО для использования специалистами фирмы-изготовителя.
<!--[if !supportLineBreakNewLine]-->*Как будет открываться, с помощью сервис-пароля?
"Настройка": пункты меня второго (нижнего) уровня глубины залегания, доступного пользователем.
Конкретный их перечень и функционал будет описан позже.*Опишите как будет приблизительно выглядеть функционал.
-
1- да
2 - чуть позже
-
Добрый день!
Сможете завтра включить свой SIM800С и дайть нам его IP-адрес. Мы попробуем законнектиться и передать для теста какие-то данные, через прототип приложения.
Нам нужно знать IP- адрес девайса и скорость UART (9600 или другая)
-
нет - еще даже печатных плат нет - делаются
-
Добрый день!
-
Current freelance projects in the category App Development for Android
Development of a mobile applicationLooking for iOS/Android developers to create gambling applications. Stack: Flutter/Unity/Kotlin/Swift Experience with visuals and designs of Chicken Road/Tower Rush/Plinko, as well as using tools like WebView, Firebase, AppsFlyer, various SDKs. App Development for Android, Apps for iOS (iPhone and iPad) ∙ 4 days 22 hours back ∙ 33 proposals |
Mobile application iOS/Android
20 USD
I am looking for a mobile application developer (iOS and/or Android) to create a training application for beginners and intermediate users. The application should help users with planning workouts, monitoring progress, and motivating them to engage in regular physical activity.… App Development for Android, Apps for iOS (iPhone and iPad) ∙ 7 days 2 hours back ∙ 20 proposals |
Development of the Android application "Poetic Assistant" with AI integration (for personal use)It is necessary to develop a mobile application for the Android OS, designed for creating, editing, and storing poems in the Ukrainian language. The application is being developed for private personal use with an emphasis on quality, convenience, reliability, and… App Development for Android ∙ 12 days 14 hours back ∙ 27 proposals |
Improvement of the mobile application on Capacitor (Android/iOS)About the Project There is an existing website (marketplace with listings) that has already been wrapped into a mobile application using Capacitor. The website runs on: TanStack Start (SSR) Supabase Cloudflare Pages Android (Capacitor) The mobile application needs to be brought… App Development for Android, Apps for iOS (iPhone and iPad) ∙ 12 days 14 hours back ∙ 15 proposals |
