forum.bitel.ru http://forum.bitel.ru/ |
|
IPTVPortal изменение пакетов http://forum.bitel.ru/viewtopic.php?f=61&t=12899 |
Страница 1 из 1 |
Автор: | mikos [ 15 май 2018, 00:03 ] |
Заголовок сообщения: | IPTVPortal изменение пакетов |
Всем доброго дня. Биллинг 6.0, пользуемся пакетами IPTVPortal. В модуле прописаны id пакетов соответствующие именам на портале. Понадобилось перейти на другие имена пакетов в портале. Решил просто изменить id у имеющихся пакетов в плагине биллинга. После изменения на примере одного пакета зашел в админку портала и не увидел никаких изменений. Удалил в админке руками всех абонентов из старого пакета, подумав, что не добавляется из-за этого. Не помогло. Куда копать? |
Автор: | mikos [ 15 май 2018, 00:05 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
И да, попробовал вернуть назад старое имя - в админке не появилось абонентов в старом пакете. Такое чувство, что оно вообще не работает) За синхронизацию подписок BGTVAccess отвечает же? Как его дернуть чтобы засинкать? |
Автор: | mikos [ 15 май 2018, 00:05 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
И да, попробовал вернуть назад старое имя - в админке не появилось абонентов в старом пакете. Такое чувство, что оно вообще не работает) За синхронизацию подписок BGTVAccess отвечает же? Как его дернуть чтобы засинкать? |
Автор: | Amir [ 15 май 2018, 19:36 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Попробуйте пересохранить аккаунт. |
Автор: | mikos [ 15 май 2018, 21:54 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
В биллинге? |
Автор: | mikos [ 15 май 2018, 22:00 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Зашел в аккаунт iptv модуля абонента (там где подписки), нажал "сохранить". Еще что-то надо проделать или он должен мгновенно сходить в iptvportal и все восстановить? Подписки ежемесячные. Может поэтому не восстанавливает сейчас? |
Автор: | mikos [ 16 май 2018, 20:36 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Есть идеи как диагностировать эту проблему? Как дернуть синхронизацию в ручном режиме? |
Автор: | Amir [ 17 май 2018, 19:00 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
При пересохранении аккаунта должна вызываться пересинхронизация пакетов. Этого не происходит? Что в логах TvAccess при этом? |
Автор: | mikos [ 17 май 2018, 19:37 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Спасибо. В логах при сохранении аккаунта вот такие ошибки есть: Код: connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - terminalModify
connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f28362c34dd4ec581vb8304aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":39,"method":"update","params":{"returning":"id","set":{"language_id":1,"registration_id":"","session_id":"","profile_id":0,"mac_addr":"00:1A:79:10:80:BC","subscriber_id":1609175,"disabled":false},"table":"terminal","where":{"eq":["id","-1"]}},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":39,"method":"update","result":[]} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f283x6234dd4ec58v1b8304aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":40,"method":"insert","params":{"returning":"id","values":[1609175,"00:1A:79:10:80:BC","10.10.10.3",0,"","",1,false],"columns":["subscriber_id","mac_addr","inet_addr","profile_id","registration_id","session_id","language_id","disabled"],"into":"terminal"},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":40,"method":"insert","error":{"message":"duplicate key value violates unique constraint \"terminal_domain_id_key1\"\nDETAIL: Key (domain_id, session_id)=(164, ) already exists.\n"}} connection 05-17/16:22:35 ERROR [sa-p-8-t-1] IptvPortalJsonClient - Error while insert: duplicate key value violates unique constraint "terminal_domain_id_key1" DETAIL: Key (domain_id, session_id)=(164, ) already exists. connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: 3D connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f28362x34dd4ec581bv8304aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":41,"method":"select","params":{"data":["id","name"],"from":"package"},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":41,"method":"select","result":[[1,"free"],[306,"pkg3"],[307,"pkg4"],[308,"pkg5"],[309,"pkg6"],[305,"pkg2"],[310,"pkg7"],[304,"pkg1"],[303,"pkg0"],[2002,"h1_popular"],[2005,"h4_3d"],[2007,"h6_around_the_world"],[2008,"h7_xxx"],[2009,"h8_Nash_Football"],[2010,"h9_Amedia"],[2001,"h0_start"],[2003,"h2_discover"],[2004,"h3_hd"],[2006,"h5_film"],[2011,"h10_home"],[2012,"h11_Max"],[1331,"HIP_3D"]]} connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: Домашний connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: Наш футбол connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: Амедиа connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: Популярный connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: HD connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Product: Познавательный connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f28362x34dvd4ec581b8304aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":42,"method":"select","params":{"data":["package_id"],"from":"subscriber_package","where":{"eq":["subscriber_id","1609175"]}},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":42,"method":"select","result":[]} connection 05-17/16:22:35 INFO [sa-p-8-t-1] IptvPortalOrderManager - Current packageIds: [], need packageIds: [2002, 2003, 2004, 2005, 2010, 2011, 2009] connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f2836234dd4ec5v81b8304aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":43,"method":"insert","params":{"returning":"id","values":[1609175,2002,null,true],"columns":["subscriber_id","package_id","expired_on","enabled"],"into":"subscriber_package"},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":43,"method":"insert","error":{"message":"insert or update on table \"subscriber_package\" violates foreign key constraint \"subscriber_package_domain_id_fkey\"\nDETAIL: Key (domain_id, subscriber_id)=(164, 1609175) is not present in table \"subscriber\".\n"}} connection 05-17/16:22:35 ERROR [sa-p-8-t-1] IptvPortalJsonClient - Error while insert: insert or update on table "subscriber_package" violates foreign key constraint "subscriber_package_domain_id_fkey" DETAIL: Key (domain_id, subscriber_id)=(164, 1609175) is not present in table "subscriber". connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - post: https://admin.xxx.iptvportal.ru:443/api/jsonsql/ connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - {Iptvportal-Authorization=sessionid=47f2836234dd4ec581b83v04aba030618} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - >> {"id":44,"method":"insert","params":{"returning":"id","values":[1609175,2003,null,true],"columns":["subscriber_id","package_id","expired_on","enabled"],"into":"subscriber_package"},"jsonrpc":"2.0"} connection 05-17/16:22:35 INFO [sa-p-8-t-1] JsonClient - << {"id":44,"method":"insert","error":{"message":"insert or update on table \"subscriber_package\" violates foreign key constraint \"subscriber_package_domain_id_fkey\"\nDETAIL: Key (domain_id, subscriber_id)=(164, 1609175) is not present in table \"subscriber\".\n"}} connection 05-17/16:22:35 ERROR [sa-p-8-t-1] IptvPortalJsonClient - Error while insert: insert or update on table "subscriber_package" violates foreign key constraint "subscriber_package_domain_id_fkey" DETAIL: Key (domain_id, subscriber_id)=(164, 1609175) is not present in table "subscriber". |
Автор: | mikos [ 17 май 2018, 19:38 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Изменения произвел как раз в пакете 3D |
Автор: | Amir [ 17 май 2018, 20:38 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
В самом IPTVPortal есть подписчик с ID 1609175? |
Автор: | mikos [ 17 май 2018, 22:58 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Действительно, на стороне портала этого аккаунта нет. В биллинге есть. Можно как-то дернуть синхронизацию аккаунтов, чтобы все что в биллинге создалось в портале? |
Автор: | mikos [ 17 май 2018, 23:02 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Подскажите еще пожалуйста, есть ли еще способ обновить подписки на портале кроме как предохранять аккаунты? У всех абонентов надо обновить подписки - каждого ручками не пересохранишь) |
Автор: | mikos [ 28 май 2018, 05:28 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
up |
Автор: | mikos [ 28 май 2018, 16:40 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Amir писал(а): Попробуйте пересохранить аккаунт. Как сделать полную синхронизацию всех подписок? Не буду же каждый аккаунт открывать и сохранять его? |
Автор: | Amir [ 28 май 2018, 21:40 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Такой функции нет, потому что не требовалось еще делать полную синхронизацию. Такой глобальный скрипт должен пересохранить все аккаунты: Код: package ru.test; import java.sql.PreparedStatement; import java.sql.ResultSet; import ru.bitel.bgbilling.kernel.container.managed.ServerContext; import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase; import ru.bitel.bgbilling.modules.tv.api.common.bean.TvAccount; import ru.bitel.bgbilling.modules.tv.api.common.service.TvAccountService; import ru.bitel.bgbilling.server.util.Setup; import ru.bitel.common.sql.ConnectionSet; public class UpdateTvAccounts extends GlobalScriptBase { final int moduleId = 1; @Override public void execute( Setup setup, ConnectionSet connectionSet ) throws Exception { final ServerContext context = ServerContext.get(); final TvAccountService tvAccountService = context.getService( TvAccountService.class, moduleId ); PreparedStatement ps = connectionSet.getConnection().prepareStatement( "SELECT id FROM tv_account_" + moduleId + " WHERE parentId=0 AND (dateTo IS NULL OR dateTo>NOW()) LIMIT 1" ); ResultSet rs = ps.executeQuery(); while( rs.next() ) { int tvAccountId = rs.getInt( 1 ); TvAccount tvAccount = tvAccountService.tvAccountGet( tvAccountId ); print( "Updating cid: " + tvAccount.getContractId() + " accountId: " + tvAccountId ); tvAccountService.tvAccountUpdate( tvAccount, false, false, 0 ); context.commit(); } rs.close(); ps.close(); } } В коде нужно указать ID модуля, а также в SQL-запросе специально указан LIMIT 1, чтобы по умолчанию действие вызывалось только на одном аккаунте. Т.е. можно проверить, что отрабатывает как надо сначала на одном, потом на десяти аккаунтах. |
Автор: | mikos [ 29 май 2018, 04:53 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Спасибо! |
Автор: | mikos [ 29 май 2018, 05:08 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Не нравится ему @Override Код: EXCEPTIONS:
Sourced file: IPTVPortal Sync Subscription Token Parsing Error: Lexical error at line 18, column 6. Encountered: "O" (79), after : "@" Sourced file: IPTVPortal Sync Subscription Token Parsing Error: Lexical error at line 18, column 6. Encountered: "O" (79), after : "@": <at unknown location> at bsh.Interpreter.eval(Interpreter.java:707) |
Автор: | mikos [ 29 май 2018, 05:09 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
BGB 6.0 |
Автор: | Amir [ 29 май 2018, 15:10 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Попробуйте убрать строчку или закомментировать // Эта аннотация не обязательна для работы класса. Хотя странно, что ругается - эта аннотация вроде в 5-ой Java уже была. |
Автор: | mikos [ 29 май 2018, 19:13 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Спасибо. На одной штуке отработало нормально. Скрипт отработал до конца и показал все обработанные аккаунты, но в портале пакеты не изменились. Пошел смотреть логи сервера и вот что нашел Код: 05-29/16:07:06 ERROR ["http-bio-/0.0.0.0-8443"-exec-2] DefaultServerSetup - Many statements was open at connection close:
com.mysql.jdbc.ServerPreparedStatement[2137] - SELECT * FROM global_script_link WHERE id=4 com.mysql.jdbc.ServerPreparedStatement[2120] - SELECT * FROM tv_account_11 WHERE id=1631 com.mysql.jdbc.ServerPreparedStatement[2139] - SELECT * FROM tv_account_11 WHERE (1 OR deviceId=-1) AND (0 OR login='22064') AND (dateFrom IS NULL OR '2014-04-01' IS NULL OR dateFrom<='2014-04-01') AND (dateTo IS NULL OR null IS NULL OR dateTo>=null) ORDER BY id com.mysql.jdbc.ServerPreparedStatement[2141] - SELECT tv_device_11.*, entity.entitySpecId, entity.title as entityTitle FROM tv_device_11 LEFT JOIN entity ON entity.id=tv_device_11.entityId WHERE tv_device_11.id=2 ... штук 20 подобных записей java.lang.RuntimeException at ru.bitel.bgbilling.server.util.DefaultServerSetup$2$1.close(DefaultServerSetup.java:417) at ru.bitel.bgbilling.server.util.PoolGuardConnectionWrapper.close(PoolGuardConnectionWrapper.java:48) at ru.bitel.common.sql.ConnectionSet.recycle(ConnectionSet.java:272) at ru.bitel.bgbilling.kernel.base.server.DefaultContext.destroy(DefaultContext.java:37) at ru.bitel.bgbilling.kernel.container.managed.ServerContext.destroy(ServerContext.java:406) at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.invoke(AbstractJaxWsHandler.java:215) at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.access$1(JaxWsHandler.java:1) at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler$2.run(JaxWsHandler.java:336) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.invoke(JaxWsHandler.java:330) at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$ServiceInstanceResolver$1.invoke(AbstractJaxWsHandler.java:314) at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:150) at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:261) at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:100) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:641) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482) at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:314) at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:608) at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:259) at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:162) at ru.bitel.common.server.JaxWSAdapter.handle(JaxWSAdapter.java:396) at bitel.billing.server.Executer.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at bitel.billing.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:48) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) |
Автор: | Amir [ 29 май 2018, 19:23 ] |
Заголовок сообщения: | Re: IPTVPortal изменение пакетов |
Это не критично, оповещение об излишнем потреблении памяти. В логах TvAccess может что-нибудь есть? |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |