<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2017 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<resources>
    <!-- Whether to enable CMAS settings (United States) -->
    <!-- No need to show this for Chilean users -->
    <bool name="show_cmas_settings">false</bool>

    <string-array name="public_safety_messages_channels_range_strings" translatable="false">
        <!-- Channel 919 and 921 are required by Chile -->
        <item>0x0397:type=other, emergency=true, alert_duration=86400000</item>
        <item>0x0399:type=other, emergency=false</item>
    </string-array>
    <!-- 4370, 4383 -->
    <string-array name="cmas_presidential_alerts_channels_range_strings" translatable="false">
        <item>0x1112:rat=gsm, emergency=true, alert_duration=86400000</item>
        <!-- additional language -->
        <item>0x1120-0x1121:rat=gsm, emergency=true</item>
    </string-array>
    <!-- 4371~4372 -->
    <string-array name="cmas_alert_extreme_channels_range_strings" translatable="false">
        <item>0x1113-0x1114:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>
    <!-- 4373~4378 -->
    <string-array name="cmas_alerts_severe_range_strings" translatable="false">
        <item>0x1115-0x111A:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>
    <!-- 4379 -->
    <string-array name="cmas_amber_alerts_channels_range_strings" translatable="false">
        <item>0x111B:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>
    <!-- 4380 ~ 4382 -->
    <string-array name="required_monthly_test_range_strings" translatable="false">
        <item>0x111C:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>
    <string-array name="exercise_alert_range_strings" translatable="false">
        <item>0x111D:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>
    <string-array name="operator_defined_alert_range_strings" translatable="false">
        <item>0x111E:rat=gsm, emergency=true, alert_duration=86400000</item>
    </string-array>

    <!-- Play alert sound in full volume regardless Do Not Disturb is on -->
    <bool name="override_dnd_default">true</bool>
    <!-- Append date-time to the alert title -->
    <bool name="show_date_time_title">true</bool>
    <!-- Link method -->
    <string name="link_method" translatable="false">none</string>
    <!-- Whether the user can mute the alert by physical button -->
    <bool name="mute_by_physical_button">false</bool>
</resources>

