Closed openncomp closed 11 months ago
Блин, я же сам себе создал и сам же ответил, конечно не будут приходить, второй раз попался в эту ловушку.
Хотя нет. Создал второго пользователя, назначил ему задачу, отправляю комментарий от своей учетки через веб интерфейс, второму пользователю уведомление в телеграм не приходит. Также если добавить комментарий от второго пользователя через веб, то мне уведомления не приходят. Оба пользователя имеют полные права в проекте, также дал им права администратора в редмайн.
Обновил nxs-chat-redmine до актуальной версии, это не изменило ситуации.
Также не приходят уведомления о создании новой задачи, когда пользователь2 создает задачу через бота и она автоматически назначается пользователю1
Интересно, может ли быть проблема в самом телеграме? откатил ВМ с Редмайн на состояние до всех манипуляций с миграцией, также запустил ВМ со старым ботом nxs-chat-srv. В общем, воссоздал картину на момент, когда все работало. Самого бота в телеграме перезапустил, но теперь он не реагирует на сообщения совсем ) В логах docker logs nxs-chat-srv нет вообще никакой реакции, когда я пишу боту в телеграм.
Но если пользователь2 создает задачу, назначенную пользователю1 (мне), то мне в телеграм приходит уведомление (через nxs-chat-srv), также мне в бота приходит уведомление, если пользователь2 оставляет комментарии к задаче.
Так, я кажется понял, почему перестал работать nxs-chat-srv после запуска nxs-support-bot. В старой версии бота выполнялось по инструкции: _nxs-chat-srv -i set_webhook_ В новой версии бота, он по-умолчанию очищает настройку вебхуков в телеграм боте, поэтому после возврата к старому боту необходимо снова выполнить инструкцию по установке вебхуков, иначе из телеграма сообщения не попадают в редмайн.
Я снова вернулся к проблеме, что новый nxs-support-bot не отправляет в телеграм комментарии, сделанные в веб интерфейсе Redmine.
Я могу предположить, что это может быть как-то связано с тем, что основной домен моего редмайна, допустим это example.com, отличается от домена для вебхуков, указанного в плагине nxs-chat-redmine и в конфиге nxs-chat-srv.conf: https://webhook.example.com:8443/redmine?token=TOKEN
В старом боте была отдельная настройка _"webhook_host" в секции конфига "telegram"_. В новой версии я не нашел такой настройки, правильно ли я понимаю, что теперь нельзя отдельно указать домен для вебхуков, отличный от основного домена Redmine?
Если это так, я попробую перенести вебхуки на основной домен и снова вернуться к тестам бота.
Здравствуйте.
В новой версии я не нашел такой настройки, правильно ли я понимаю, что теперь нельзя отдельно указать домен для вебхуков, отличный от основного домена Redmine?
В разделе API settings можно настроить адрес и порт, где бот будет слушать. После этого вывесить порт наружу и ходить по домену или IP сервера с ботом.
В разделе API settings можно настроить адрес и порт, где бот будет слушать. После этого вывесить порт наружу и ходить по домену или IP сервера с ботом.
Где искать эту настройку?
Где искать эту настройку?
В файле /nxs-support-bot.conf
.
В файле
/nxs-support-bot.conf
Рекурсивный поиск по /var/lib/docker/overlay2 результатов не дал. Попытка docker exec -it supportbot /bin/bash как и docker exec supportbot cat /nxs-support-bot.conf завершается ошибкой. Где найти этот файл настроек?
Наверное, я чего-то не понимаю, но я обыскал сейчас почти всю систему, и никак не могу понять, где находится nxs-support-bot.conf
Наверное, я чего-то не понимаю, но я обыскал сейчас почти всю систему, и никак не могу понять, где находится nxs-support-bot.conf
Похоже что я пустил вас по неправильному пути, прошу прощения((
Разобрался как в вашем случае правильно указать требуемые параметры. Насколько понимаю, вы запускаете бота через docker-compose, соответственно править нужно файл по пути .deploy/docker-compose/app.conf
. Добавьте туда требуемые параметры и перезапустите контейнер.
ЯЧ столкнулся с той же проблемой , что новый nxs-support-bot не отправляет в телеграм комментарии, сделанные в веб интерфейсе Redmine. Как решили проблему Вы подскажите? Set URL for notifications. This URL is used by plugin to send issue updates to the Bot. Use a secretToken value from API settings to compose an URL. An URL format you need to use is following: {PROTO}://{DOMAIN}/v1/redmine?token={SECRET_TOKEN}. Адрес в плагине Я правильно понимаю в формате ? https://example.com/v1/redmine?roken=secret_token ?
Какие дополнительные изменения нужно внести? Докер бота и докер redmine запущены на одном сервере
Приветствую! В понедельник Андрей посмотрит ваш вопрос и поможет решить проблему
Здравствуйте.
Да, ссылка вида https://example.com/v1/redmine?token=secret_token
.
Вероятно не проходят запросы. Проверьте, пожалуйста, доступность контейнеров друг для друга.
В комментарии указано /redmine?roken=secret_token
, нет ли опечатки в настройках плагина redmine?
Здравствуйте.
Да, ссылка вида
https://example.com/v1/redmine?token=secret_token
.Вероятно не проходят запросы. Проверьте, пожалуйста, доступность контейнеров друг для друга.
В комментарии указано
/redmine?roken=secret_token
, нет ли опечатки в настройках плагина redmine?
касательно В комментарии указано /redmine?roken=secret_token
, нет ли опечатки в настройках плагина redmine? это опечатка. В настройках плагина все правильно.
Вывод docker ps
/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose#` docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5c74f610656e nixyslab/nxs-support-bot:latest "/app -c /app.conf" 7 minutes ago Up 6 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp supportbot
1b07dac69ad6 percona:8 "/docker-entrypoint.…" 7 minutes ago Up 7 minutes (healthy) 3306/tcp, 33060/tcp mysql-testbot
33ae626924ac bitnami/redis:latest "/opt/bitnami/script…" 7 minutes ago Up 7 minutes 6379/tcp redis
91986506a512 redmine:4.2.10 "/sbin/entrypoint.sh…" 32 hours ago Up 32 hours (healthy) 0/tcp, 80/tcp, 443/tcp redmine
85261dd938ce mysql:5.7.22 "docker-entrypoint.s…" 32 hours ago Up 32 hours 3306/tcp mysql
8a17b173e143 memcached:1.5.6 "docker-entrypoint.s…" 32 hours ago Up 32 hours 11211/tcp memcached
6fc821c2dddc nginx:1.22.0 "nginx -g 'daemon of…" 32 hours ago Up 32 hours (healthy) 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp nginx-proxy
Однако ситуация не меняется по прежнему все измeнения внесенные в web интерфейсе Redmine по соответствующему тикету не обновляются в telegram. Какие настройки стоит проверить, какие дополнительные проверки выполнить? заранее спасибо
То есть, все стартует без ошибок...
Из контейнера бота, по указанному в плагине URL, какой код ответа возвращается, если его curl запросить?
Есть ли что то в логах бота и редмайна?
То есть, все стартует без ошибок...
Из контейнера бота, по указанному в плагине URL, какой код ответа возвращается, если его curl запросить? при попытке выполнить
docker exec -it supportbot /bin/bash
получаю ошибкуroot@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker exec -it supportbot /bin/bash OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown
Как следствие не могу проверить вывод curl Есть ли что то в логах бота и редмайна? supportbotroot@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker logs supportbot {"level":"info","msg":"program started","time":"2023-11-13T09:21:28Z"}
redmine
root@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker logs redmine
Initializing logdir...
Initializing datadir...
Symlinking dotfiles...
Installing configuration templates...
Configuring redmine...
Configuring redmine::database
Configuring redmine::memcached...
Configuring redmine::unicorn...
Configuring redmine::secret_token...
Generating a session token...
Note:
All old sessions will become invalid.
Please specify the REDMINE_SECRET_TOKEN parameter for persistence.
**SHOULD** be defined if you have a load-balancing Redmine cluster.
Configuring redmine::max_concurrent_ajax_uploads...
Configuring redmine::sudo_mode...
Configuring redmine::autologin_cookie...
Configuring redmine::backups...
Configuring redmine::rmagic::font...
Configuring nginx...
Configuring nginx::redmine...
Installing plugins...
Installing gems required by plugins...
You are replacing the current local value of without, which is currently "development:test"
Migrating plugins. Please be patient, this could take a while...
DEPRECATION: :dalli_store will be removed in Dalli 3.0.
Please use Rails' official :mem_cache_store instead.
https://guides.rubyonrails.org/caching_with_rails.html
== 1 AddAutowatchInvolvedIssueToUser: migrating ===============================
-- add_column(:user_preferences, :autowatch_involved_issue, :boolean, {:default=>true, :null=>false})
-> 0.5997s
== 1 AddAutowatchInvolvedIssueToUser: migrated (0.5997s) ======================
== 2 AddHideToRoles: migrating ================================================
-- add_column(:roles, :hide, :boolean, {:default=>false, :null=>false})
-> 0.5015s
== 2 AddHideToRoles: migrated (0.5015s) =======================================
== 3 CreateDashboards: migrating ==============================================
-- create_table(:dashboards)
-> 0.3597s
== 3 CreateDashboards: migrated (0.3598s) =====================================
== 4 CreateDashboardRoles: migrating ==========================================
-- create_table(:dashboard_roles)
-> 0.3586s
== 4 CreateDashboardRoles: migrated (0.3587s) =================================
== 5 CreateDashboardDefaults: migrating =======================================
Creating welcome default dashboard
Creating project default dashboard
== 5 CreateDashboardDefaults: migrated (0.2091s) ==============================
== 6 AddNewTicketMessageToProjects: migrating =================================
-- change_table(:projects, {:bulk=>true})
-> 0.7095s
== 6 AddNewTicketMessageToProjects: migrated (0.7096s) ========================
Installing themes...
2023-11-12 03:09:15,076 INFO Included extra file "/etc/supervisor/conf.d/cron.conf" during parsing
2023-11-12 03:09:15,076 INFO Included extra file "/etc/supervisor/conf.d/nginx.conf" during parsing
2023-11-12 03:09:15,076 INFO Included extra file "/etc/supervisor/conf.d/unicorn.conf" during parsing
2023-11-12 03:09:15,076 INFO Set uid to user 0 succeeded
2023-11-12 03:09:15,080 INFO RPC interface 'supervisor' initialized
2023-11-12 03:09:15,080 INFO supervisord started with pid 1
2023-11-12 03:09:16,082 INFO spawned: 'unicorn' with pid 279
2023-11-12 03:09:16,083 INFO spawned: 'cron' with pid 280
2023-11-12 03:09:16,085 INFO spawned: 'nginx' with pid 281
2023-11-12 03:09:17,520 INFO success: unicorn entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2023-11-12 03:09:17,520 INFO success: cron entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2023-11-12 03:09:17,520 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)`
есть ли какая то другая информация которую мне нужно проверить ? Настройки docker-deploy бота?
Из контейнера бота, по указанному в плагине URL, какой код ответа возвращается, если его curl запросить? при попытке выполнить docker exec -it supportbot /bin/bash получаю ошибку root@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker exec -it supportbot /bin/bash OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown Как следствие не могу проверить вывод curl
В контейнере /bin/sh должен быть, если я правильно помню.
По поводу домена, можете отправить то что задано в плагине?
Токен не нужен, только часть https://example.com/v1/redmine?token=
.
Из контейнера бота, по указанному в плагине URL, какой код ответа возвращается, если его curl запросить? при попытке выполнить docker exec -it supportbot /bin/bash получаю ошибку root@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker exec -it supportbot /bin/bash OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown Как следствие не могу проверить вывод curl
В контейнере /bin/sh должен быть, если я правильно помню. Увы но
root@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# docker exec -it supportbot /bin/sh OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/sh": stat /bin/sh: no such file or directory: unknown
По поводу домена, можете отправить то что задано в плагине? Токен не нужен, только частьhttps://example.com/v1/redmine?token=
.
В контейнере /bin/sh должен быть, если я правильно помню. Может есть еще варианты?
Добавьте порт 8080 в URL, на котором находится контейнер с ботом. Тогда должно все заработать.
Так же у вас редмайн и бот на одном хосте, можно переключиться на http и выключить SSL в плагине.
Добавьте порт 8080 в URL, на котором находится контейнер с ботом. Тогда должно все заработать.
Так же у вас редмайн и бот на одном хосте, можно переключиться на http и выключить SSL в плагине.
порт добавил но увы по прежнему не работает обратная связь при обновлении статуса задачи через веб
порт добавил но увы по прежнему не работает обратная связь при обновлении статуса задачи через веб
Из контейнера редмайна, с хоста доступен этот адрес? Какой код возвращает?
Из контейнера
root@28632751616e:/home/redmine/redmine# curl -I https://redmine10.inango.com:8080/v1/redmine?token=
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
С хоста root@wkv-014:/var/lib/docker/volumes/redmine_data/_data/plugins/nxs-support-bot/.deploy/docker-compose# curl -I https://redmine10.inango.com:8080/v1/redmine?token= curl: (35) error:0A00010B:SSL routines::wrong version number
Есть какие то настройки дополнительные изменения/настройки которые мне необходимо произвести/проверить ? Спасибо
У Вас есть для меня еще какие нибудь советы предложения которыми Я могу воспользоваться и все же получить работоспособное решение. Заранее спасибо
Redmine не может доступ к серверной части бота получить, чтобы послать ему изменения по задачам, которые рассылаются пользователям бота. Что в данном случае могу предложить...
Disable SSL verification
.http://<IP_to_docker_host_machine>:8080/v1/redmine?token=<Secret_token>
либо http://<BOT_CONTAINER_IP>:80/v1/redmine?token=<Secret_token>
Redmine не может доступ к серверной части бота получить, чтобы послать ему изменения по задачам, которые рассылаются пользователям бота. Что в данном случае могу предложить...
- Отключите в настройках плагина Redmine доступ по SSL флагом
Disable SSL verification
.- Задайте другой URL для доступа по HTTP. Что то вроде такого
http://<IP_to_docker_host_machine>:8080/v1/redmine?token=<Secret_token>
либоhttp://<BOT_CONTAINER_IP>:80/v1/redmine?token=<Secret_token>
Благодарю, связность настроить удалось. Следующий вопрос подскажите в созданном мною telegram bot сейчас три команды /issue create /settings /help . Как переключаться между отдельными проектами? Есть ли возможность выбора issue ? как реализована работа с ботом для нескольких человек в рамках одного issue.
Как переключаться между отдельными проектами?
Если вы создаете задачу через бота, вам будет выведено меню, в котором можно выбрать проект и приоритет задачи.
Есть ли возможность выбора issue?
Если вы отвечаете в задачу через бота, то вам нужно выбрать уведомление о комментарии по задаче и отправить ответное сообщение на него.
Как реализована работа с ботом для нескольких человек в рамках одного issue.
Участники могут отвечать на комментарии через бота в задачу и получать уведомления об изменениях.
Так как дополнительных вопросов не поступало, мы закрываем данную задачу.
Попробовал создать задачу через бота, все нормально, задача создалась. Комментарии при ответе из бота добавляются в Redmine. Но при ответе в Redmine, комментарии не приходят в Telegram. Логи пустые.