Moderated Automatically Switching Voice Profiles Based On Application/Website #jaws


 

Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah


Soronel Haetir
 

I do not believe this is possible, as far as I can tell the profile in
use is based on the currently focused program.

It is possible to have scripts and even normal jaws configuration on a
per-site basis but as far as I can tell the voice profile is not part
of that.

On 10/2/22, Noah Carver <noahcarver494@...> wrote:
Hello Members,

I am currently taking an Italian course as part of my major's requirements
and have found the voices provided by Vocalizer are much better than
Eloquence. Because of this, I find myself switching language profiles quite
often. If possible, I would like to configure JAWS to automatically switch
voice profiles when visiting the website used to complete Italian homework
so that at least this task can be automated. I can configure other settings
through the Settings Center on a per-application or per-website basis and
seem to recall JAWS users who configured different voice profiles for
different applications, so I am hoping this is indeed possible both for
applications and websites. If this is indeed doable, please advise on how I
might go about it.

Any help is greatly appreciated.

Sincerely,

Noah





--
Soronel Haetir
soronel.haetir@...


 

Dear Soronel,

Thanks for your reply. This is unfortunate, but then again, it's not all that hard to change profiles so I will continue doing that as needed. Thanks for your help.

Sincerely,

Noah


Mark
 

Maybe let suggestions@... know about your idea, Noah. If the feature would save you a few steps, it's an improvement to the usability of the product.


Ashleigh Piccinino
 

I would think what Noah is talking about would be good for people with more severe PWD. Stuff. Then he probably has. That is, with mobility issues to where they can't actually switch profiles on the keyboard.

Get Outlook for iOS
From: main@jfw.groups.io <main@jfw.groups.io> on behalf of Mark <mweiler@...>
Sent: Tuesday, October 4, 2022 4:47:06 AM
To: main@jfw.groups.io <main@jfw.groups.io>
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws
 
Maybe let suggestions@... know about your idea, Noah. If the feature would save you a few steps, it's an improvement to the usability of the product.


Udo Egner-Walter
 

Hi Noah, 

I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 

1. Change voice profile by shortcut 

If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 

<Code Start>

Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 

Use "Default.jsb"

const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"

Script ChangeVoiceProfiles ()
If GetActiveProfileName () == Voice1 then
SetActiveVoiceProfileByName (Voice2)
else
SetActiveVoiceProfileByName (Voice1)
EndIf ; If GetActiveProfileName == Voice1 then
EndScript 

<Code End>

Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)

2. Automatically switch voice profile by using a particular web site

As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 

The steps are as follows (note: I'm not using an English version so the names might differ a bit): 

1. Open you Italian web site 
2. Open Script Manager by pressing JAWS+0 in the number row
3, Go to File menu of Script Manager and open it
4. Select "Open domain-specific script file" (or a phrase similar).
5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site
6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)

<Code Start>

Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 

const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"

Void Function AutoStartEvent ()
SetActiveVoiceProfileByName (Voice2)
EndFunction 

Void Function AutoFinishEvent ()
SetActiveVoiceProfileByName (Voice1)
EndFunction 

<Code End>

Good luck and let me know if something isn't clear. 

Udo 



Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:

Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah


Leo
 

Hi Udo, very interesting and useful script.  Would this work to switch between voice profiles regardless  of the engine? Let’s say between Eloquence and Vocalizer?

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 4:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Hi Noah, 

 

I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 

 

1. Change voice profile by shortcut 

 

If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

Use "Default.jsb"

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Script ChangeVoiceProfiles ()

If GetActiveProfileName () == Voice1 then

SetActiveVoiceProfileByName (Voice2)

else

SetActiveVoiceProfileByName (Voice1)

EndIf ; If GetActiveProfileName == Voice1 then

EndScript 

 

<Code End>

 

Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)

 

2. Automatically switch voice profile by using a particular web site

 

As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 

 

The steps are as follows (note: I'm not using an English version so the names might differ a bit): 

 

1. Open you Italian web site 

2. Open Script Manager by pressing JAWS+0 in the number row

3, Go to File menu of Script Manager and open it

4. Select "Open domain-specific script file" (or a phrase similar).

5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site

6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Void Function AutoStartEvent ()

SetActiveVoiceProfileByName (Voice2)

EndFunction 

 

Void Function AutoFinishEvent ()

SetActiveVoiceProfileByName (Voice1)

EndFunction 

 

<Code End>

 

Good luck and let me know if something isn't clear. 

 

Udo 

 

 



Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:

 

Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah

 


Udo Egner-Walter
 

Hi Leo, 

this script should work with all voice profiles created by you or Freedom Scientific. 
All the best
Udo 

Am 09.10.2022 um 17:18 schrieb Leo <literophilus@...>:

Hi Udo, very interesting and useful script.  Would this work to switch between voice profiles regardless  of the engine? Let’s say between Eloquence and Vocalizer?
 
Best,
Leo Bado
 
From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 4:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws
 
Hi Noah, 
 
I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 
 
1. Change voice profile by shortcut 
 
If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 
 
<Code Start>
 
Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 
 
Use "Default.jsb"
 
const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"
 
Script ChangeVoiceProfiles ()
If GetActiveProfileName () == Voice1 then
SetActiveVoiceProfileByName (Voice2)
else
SetActiveVoiceProfileByName (Voice1)
EndIf ; If GetActiveProfileName == Voice1 then
EndScript 
 
<Code End>
 
Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)
 
2. Automatically switch voice profile by using a particular web site
 
As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 
 
The steps are as follows (note: I'm not using an English version so the names might differ a bit): 
 
1. Open you Italian web site 
2. Open Script Manager by pressing JAWS+0 in the number row
3, Go to File menu of Script Manager and open it
4. Select "Open domain-specific script file" (or a phrase similar).
5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site
6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)
 
<Code Start>
 
Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 
 
const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"
 
Void Function AutoStartEvent ()
SetActiveVoiceProfileByName (Voice2)
EndFunction 
 
Void Function AutoFinishEvent ()
SetActiveVoiceProfileByName (Voice1)
EndFunction 
 
<Code End>
 
Good luck and let me know if something isn't clear. 
 
Udo 
 
 


Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:
 
Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah 
 



Leo
 

Great! One last question, in the script, you defined the constant values as follows:

Voice1 = "Maged Vocalizer Expressive Premium",

Voice2 = "Anna Vocalizer Expressive Premium"

 

My question is this:

The strings set off in quotes  are Jaws standard  values or just the voice profile name given by the user in the voice profile settings?

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 9:37 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Hi Leo, 

 

this script should work with all voice profiles created by you or Freedom Scientific. 

All the best

Udo 



Am 09.10.2022 um 17:18 schrieb Leo <literophilus@...>:

 

Hi Udo, very interesting and useful script.  Would this work to switch between voice profiles regardless  of the engine? Let’s say between Eloquence and Vocalizer?

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 4:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Hi Noah, 

 

I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 

 

1. Change voice profile by shortcut 

 

If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

Use "Default.jsb"

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Script ChangeVoiceProfiles ()

If GetActiveProfileName () == Voice1 then

SetActiveVoiceProfileByName (Voice2)

else

SetActiveVoiceProfileByName (Voice1)

EndIf ; If GetActiveProfileName == Voice1 then

EndScript 

 

<Code End>

 

Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)

 

2. Automatically switch voice profile by using a particular web site

 

As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 

 

The steps are as follows (note: I'm not using an English version so the names might differ a bit): 

 

1. Open you Italian web site 

2. Open Script Manager by pressing JAWS+0 in the number row

3, Go to File menu of Script Manager and open it

4. Select "Open domain-specific script file" (or a phrase similar).

5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site

6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Void Function AutoStartEvent ()

SetActiveVoiceProfileByName (Voice2)

EndFunction 

 

Void Function AutoFinishEvent ()

SetActiveVoiceProfileByName (Voice1)

EndFunction 

 

<Code End>

 

Good luck and let me know if something isn't clear. 

 

Udo 

 

 




Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:

 

Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah 

 

 


Leo
 

Never mind; I work it out by myself, and I repeat, the script is great, it just needed a quick and easy fix, but just in my case.

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Leo
Sent: Sunday, October 9, 2022 10:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Great! One last question, in the script, you defined the constant values as follows:

Voice1 = "Maged Vocalizer Expressive Premium",

Voice2 = "Anna Vocalizer Expressive Premium"

 

My question is this:

The strings set off in quotes  are Jaws standard  values or just the voice profile name given by the user in the voice profile settings?

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 9:37 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Hi Leo, 

 

this script should work with all voice profiles created by you or Freedom Scientific. 

All the best

Udo 

 

Am 09.10.2022 um 17:18 schrieb Leo <literophilus@...>:

 

Hi Udo, very interesting and useful script.  Would this work to switch between voice profiles regardless  of the engine? Let’s say between Eloquence and Vocalizer?

 

Best,

Leo Bado

 

From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 4:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws

 

Hi Noah, 

 

I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 

 

1. Change voice profile by shortcut 

 

If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

Use "Default.jsb"

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Script ChangeVoiceProfiles ()

If GetActiveProfileName () == Voice1 then

SetActiveVoiceProfileByName (Voice2)

else

SetActiveVoiceProfileByName (Voice1)

EndIf ; If GetActiveProfileName == Voice1 then

EndScript 

 

<Code End>

 

Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)

 

2. Automatically switch voice profile by using a particular web site

 

As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 

 

The steps are as follows (note: I'm not using an English version so the names might differ a bit): 

 

1. Open you Italian web site 

2. Open Script Manager by pressing JAWS+0 in the number row

3, Go to File menu of Script Manager and open it

4. Select "Open domain-specific script file" (or a phrase similar).

5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site

6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)

 

<Code Start>

 

Include "HjGlobal.jsh" 

Include "hjconst.jsh" 

include "MSAAConst.jsh"

include "UIA.jsh"

Include "common.jsm" 

 

const 

Voice1 = "Maged Vocalizer Expressive Premium", 

Voice2 = "Anna Vocalizer Expressive Premium"

 

Void Function AutoStartEvent ()

SetActiveVoiceProfileByName (Voice2)

EndFunction 

 

Void Function AutoFinishEvent ()

SetActiveVoiceProfileByName (Voice1)

EndFunction 

 

<Code End>

 

Good luck and let me know if something isn't clear. 

 

Udo 

 

 



Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:

 

Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah 

 

 


Udo Egner-Walter
 

Leo, great, I'm glad I could help you 😀 

Am 09.10.2022 um 23:52 schrieb Leo <literophilus@...>:

Never mind; I work it out by myself, and I repeat, the script is great, it just needed a quick and easy fix, but just in my case.
 
Best,
Leo Bado
 
From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Leo
Sent: Sunday, October 9, 2022 10:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws
 
Great! One last question, in the script, you defined the constant values as follows:
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"
 
My question is this:
The strings set off in quotes  are Jaws standard  values or just the voice profile name given by the user in the voice profile settings?
 
Best,
Leo Bado
 
From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 9:37 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws
 
Hi Leo, 
 
this script should work with all voice profiles created by you or Freedom Scientific. 
All the best
Udo 

 

Am 09.10.2022 um 17:18 schrieb Leo <literophilus@...>:
 
Hi Udo, very interesting and useful script.  Would this work to switch between voice profiles regardless  of the engine? Let’s say between Eloquence and Vocalizer?
 
Best,
Leo Bado
 
From: main@jfw.groups.io <main@jfw.groups.io> On Behalf Of Udo Egner-Walter via groups.io
Sent: Sunday, October 9, 2022 4:30 AM
To: main@jfw.groups.io
Subject: Re: Automatically Switching Voice Profiles Based On Application/Website #jaws
 
Hi Noah, 
 
I don't know if you found a solution yet but if you want to use JAWS-Script you can do the following: 
 
1. Change voice profile by shortcut 
 
If you assign a key to the script "ChangeVoideProfile" you can switch between two voice profiles by using one shortcut. If the first voice profile is active the second one gets activated and vice versa: 
 
<Code Start>
 
Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 
 
Use "Default.jsb"
 
const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"
 
Script ChangeVoiceProfiles ()
If GetActiveProfileName () == Voice1 then
SetActiveVoiceProfileByName (Voice2)
else
SetActiveVoiceProfileByName (Voice1)
EndIf ; If GetActiveProfileName == Voice1 then
EndScript 
 
<Code End>
 
Notice: You have to change the voice profile in the line "Voice1" and "Voice2" (the text between "). This was an example I made for a guy wanting to use the German Voice and the Arabic speaking Voice. Take care to write the chars case sensitive so JAWS could find the files)
 
2. Automatically switch voice profile by using a particular web site
 
As Soronol already said you can use user scripts for a particular web site. There is a function event which is called when entering this page so you can select your Italian voice. And there's a function event which is called when you leave this site so you can switch back to your Enlgish voice profile. 
 
The steps are as follows (note: I'm not using an English version so the names might differ a bit): 
 
1. Open you Italian web site 
2. Open Script Manager by pressing JAWS+0 in the number row
3, Go to File menu of Script Manager and open it
4. Select "Open domain-specific script file" (or a phrase similar).
5. By pressing JAWS+T you get the title of the Script Manager file which should include the url of your web site
6. Insert the following lines (and note: change the voice profile names in the line beginning with "voice1" and "voice" to as described in the Script above to your needs. Take care to write the chars case sensitive so JAWS could find the files)
 
<Code Start>
 
Include "HjGlobal.jsh" 
Include "hjconst.jsh" 
include "MSAAConst.jsh"
include "UIA.jsh"
Include "common.jsm" 
 
const 
Voice1 = "Maged Vocalizer Expressive Premium", 
Voice2 = "Anna Vocalizer Expressive Premium"
 
Void Function AutoStartEvent ()
SetActiveVoiceProfileByName (Voice2)
EndFunction 
 
Void Function AutoFinishEvent ()
SetActiveVoiceProfileByName (Voice1)
EndFunction 
 
<Code End>
 
Good luck and let me know if something isn't clear. 
 
Udo 
 
 



Am 03.10.2022 um 02:40 schrieb Noah Carver <noahcarver494@...>:
 
Hello Members,

I am currently taking an Italian course as part of my major's requirements and have found the voices provided by Vocalizer are much better than Eloquence. Because of this, I find myself switching language profiles quite often. If possible, I would like to configure JAWS to automatically switch voice profiles when visiting the website used to complete Italian homework so that at least this task can be automated. I can configure other settings through the Settings Center on a per-application or per-website basis and seem to recall JAWS users who configured different voice profiles for different applications, so I am hoping this is indeed possible both for applications and websites. If this is indeed doable, please advise on how I might go about it.

Any help is greatly appreciated.

Sincerely,

Noah