yes, we had same issue and it is working as designed.
GIM is in UTC and then a conversion is done to make the time correct as far as OCS, URS etc are concerned. I have pasted Genesys response below................
When OCS stores dial_sched_time/ call_time fields, it stores these in UTC. OCS uses the time zone objects in CME to convert from the time zone of the record to UTC time. When you view these fields in OCM/ GA, they should be shown in the time zone local to the record.
Note: OCS is running in BST, 1 hour ahead of GMT
When OCS received the AddRecord request:
received from 65208(sip_server_1_dc1_p)gen_obd_srv2_ipcc_sit_dc1:7017(fd=14) message EventUserEvent
AttributeReferenceID 7
AttributeUserData [422] 00 10 00 00..
...
'GSW_TZ_NAME' 'GMT'
...
'GSW_DATE_TIME' '04/01/2015 14:06Z'
...
AttributeThisDN '10003'
AttributeUserEvent EventUserEvent
AttributeTimeinSecs 1427897188 (15:06:28)
AttributeTimeinuSecs 426672
AttributeEventSequenceNumber 00000000000103bb
15:06:28.426 Trc 50002 TEvent: EventUserEvent
It converted the value of the dial_sched_time to local to OCS, taking into consideration the TZOffset of the time zone of the record:
SetRecordStatus(): status Ready set for record ChainID=0, ChainN=0, RecordHandle=321
RecordHandle = 321 ChainID = 0 ChainNum = 0
Phone = 850441628767321
PhoneType = 1
ListName = FREEDIAL_UKCOLL_CallingList TableName = FREEDIAL_UKCOLL_tbl
CampaignName = FREEDIAL_COLLECTIONS
Attempt = 0
RecordType = 5
TZDBID = 101 TZOffset = 3600 <--------------
DailyFrom = 25200 (07:00:00) DailyTill = 82800 (23:00:00)
DialSchedTime = 1427893560 <------------------
And then inserts this value in the calling list:
15:06:28.430 CM_DBCallList(206-195-248): DoInsert
15:06:28.430 CM_DBCallList(206-195-248): DBServer 'ocs_dbserver_1_dc1_p for FREEDIAL_UKCOLL_CallingList (18)' SQL: insert into FREEDIAL_UKCOLL_tbl (call_result,agent_id,contact_info,contact_info_type,dial_sched_time,daily_from,daily_till,record_type,record_status,tz_dbid,attempt,campaign_id,switch_id,REMARK,FORENAME,SURNAME,chain_id,chain_n,record_id) values (28,'63003','850441628767321',1,1427893560,25200,82800,5,1,101,0,195,101,'test','Shubham','Singhania',472,0,473) [ReqID=407555]
However, if you convert "1427893560" using a epoch converter (http://www.epochconverter.com/), the value is Wed, 01 Apr 2015 13:06:00 GMT, which is 1 hour earlier than the date specified by the agent.
As the dial_sched_time has been reached, the record is retrieved and sent to an agent for dialing.
When the agent processes the record, the call_time is set to 1427897203.
UpdateRecord Handle:322 ChainID:472 ChainNum:0
15:08:15.195 CM_DBCallRecord(206-195-248): DBServer 'ocs_dbserver_1_dc1_p for FREEDIAL_UKCOLL_CallingList (18)' SQL: update FREEDIAL_UKCOLL_tbl set call_result=33,agent_id='63003',call_time=1427897203,dial_sched_time=1427893560,record_type=5,record_status=3,attempt=1,switch_id=101 where chain_id=472 and chain_n=0 [ReqID=407708]
Again, if I convert that I get:
Wed, 01 Apr 2015 14:06:43 GMT
When viewed in GA (or OCM), the definition of the GMT time zone object is taken into account and a coversion is done to add 1 hour to each of the times displayed (dial_sched_time and call_time).
As I mentioned above, I can reproduce the issue in my lab, when I set the system time zone to GMT/ London time, and add a record with time zone = GMT. It does not happen when I disable DST Enabled on the GMT time zone object in CME (which requires an OCS restart). I also created a separate time zone object for British Summer Time with DST enabled.