Diarkis Room を使ってプロパティを操作する

Room のプロパティを取得する方法

property := room.GetProperty(roomID, "RoomName")
if property == nil {
    // property RoomName does not exist
}
properties := room.GetProperties(roomID)

Room のプロパティを更新する方法

コールバック関数は、Room のプロパティを更新した場合は true を返し、プロパティを更新しなかった場合は false を返すことが期待されます。

_ := room.UpdatePropertis(roomID, func(properties map[string]interface{}) bool {
  if _, ok := properties["counter"]; !ok {
    properties["counter"] = 0
    return true
  }
  counter := properties["counter"].(int)
  properties["counter"] = counter + 1
  return true
})

Room のプロパティの更新に失敗した場合の例

_ := room.UpdatePropertis(roomID, func(properties map[string]interface{}) bool {
if _, ok := properties["booked"]; !ok {
properties["booked"] = true
return true
      }
      // The room has already been booked
      return false
})

最終更新